// GENERATED CODE
// Generated by the Java program at /build/annotationProcessors at compile time
// from annotations on Java methods. To update, change the annotations on the
// corresponding Java methods and rerun the build. Manually updating this file
// will cause your build to fail.

#ifndef GeneratedJNINatives_h
#define GeneratedJNINatives_h

#include "GeneratedJNIWrappers.h"
#include "mozilla/jni/Natives.h"

namespace mozilla {
namespace widget {

template<class Impl>
class ANRReporter::Natives : public mozilla::jni::NativeImpl<ANRReporter, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<ANRReporter::GetNativeStack_t>(
                mozilla::jni::NativeStub<ANRReporter::GetNativeStack_t, Impl>
                ::template Wrap<&Impl::GetNativeStack>),

        mozilla::jni::MakeNativeMethod<ANRReporter::ReleaseNativeStack_t>(
                mozilla::jni::NativeStub<ANRReporter::ReleaseNativeStack_t, Impl>
                ::template Wrap<&Impl::ReleaseNativeStack>),

        mozilla::jni::MakeNativeMethod<ANRReporter::RequestNativeStack_t>(
                mozilla::jni::NativeStub<ANRReporter::RequestNativeStack_t, Impl>
                ::template Wrap<&Impl::RequestNativeStack>)
    };
};

template<class Impl>
constexpr JNINativeMethod ANRReporter::Natives<Impl>::methods[];

template<class Impl>
class AlarmReceiver::Natives : public mozilla::jni::NativeImpl<AlarmReceiver, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<AlarmReceiver::NotifyAlarmFired_t>(
                mozilla::jni::NativeStub<AlarmReceiver::NotifyAlarmFired_t, Impl>
                ::template Wrap<&Impl::NotifyAlarmFired>)
    };
};

template<class Impl>
constexpr JNINativeMethod AlarmReceiver::Natives<Impl>::methods[];

template<class Impl>
class GeckoAppShell::Natives : public mozilla::jni::NativeImpl<GeckoAppShell, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<GeckoAppShell::NotifyObservers_t>(
                mozilla::jni::NativeStub<GeckoAppShell::NotifyObservers_t, Impl>
                ::template Wrap<&Impl::NotifyObservers>),

        mozilla::jni::MakeNativeMethod<GeckoAppShell::SyncNotifyObservers_t>(
                mozilla::jni::NativeStub<GeckoAppShell::SyncNotifyObservers_t, Impl>
                ::template Wrap<&Impl::SyncNotifyObservers>)
    };
};

template<class Impl>
constexpr JNINativeMethod GeckoAppShell::Natives<Impl>::methods[];

template<class Impl>
class GeckoEditable::Natives : public mozilla::jni::NativeImpl<GeckoEditable, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<GeckoEditable::DisposeNative_t>(
                mozilla::jni::NativeStub<GeckoEditable::DisposeNative_t, Impl>
                ::template Wrap<&Impl::DisposeNative>),

        mozilla::jni::MakeNativeMethod<GeckoEditable::OnImeAcknowledgeFocus_t>(
                mozilla::jni::NativeStub<GeckoEditable::OnImeAcknowledgeFocus_t, Impl>
                ::template Wrap<&Impl::OnImeAcknowledgeFocus>),

        mozilla::jni::MakeNativeMethod<GeckoEditable::OnImeAddCompositionRange_t>(
                mozilla::jni::NativeStub<GeckoEditable::OnImeAddCompositionRange_t, Impl>
                ::template Wrap<&Impl::OnImeAddCompositionRange>),

        mozilla::jni::MakeNativeMethod<GeckoEditable::OnImeReplaceText_t>(
                mozilla::jni::NativeStub<GeckoEditable::OnImeReplaceText_t, Impl>
                ::template Wrap<&Impl::OnImeReplaceText>),

        mozilla::jni::MakeNativeMethod<GeckoEditable::OnImeSynchronize_t>(
                mozilla::jni::NativeStub<GeckoEditable::OnImeSynchronize_t, Impl>
                ::template Wrap<&Impl::OnImeSynchronize>),

        mozilla::jni::MakeNativeMethod<GeckoEditable::OnImeUpdateComposition_t>(
                mozilla::jni::NativeStub<GeckoEditable::OnImeUpdateComposition_t, Impl>
                ::template Wrap<&Impl::OnImeUpdateComposition>),

        mozilla::jni::MakeNativeMethod<GeckoEditable::OnKeyEvent_t>(
                mozilla::jni::NativeStub<GeckoEditable::OnKeyEvent_t, Impl>
                ::template Wrap<&Impl::OnKeyEvent>)
    };
};

template<class Impl>
constexpr JNINativeMethod GeckoEditable::Natives<Impl>::methods[];

template<class Impl>
class GeckoJavaSampler::Natives : public mozilla::jni::NativeImpl<GeckoJavaSampler, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<GeckoJavaSampler::GetProfilerTime_t>(
                mozilla::jni::NativeStub<GeckoJavaSampler::GetProfilerTime_t, Impl>
                ::template Wrap<&Impl::GetProfilerTime>)
    };
};

template<class Impl>
constexpr JNINativeMethod GeckoJavaSampler::Natives<Impl>::methods[];

template<class Impl>
class GeckoSmsManager::Natives : public mozilla::jni::NativeImpl<GeckoSmsManager, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifyCursorDone_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifyCursorDone_t, Impl>
                ::template Wrap<&Impl::NotifyCursorDone>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifyCursorError_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifyCursorError_t, Impl>
                ::template Wrap<&Impl::NotifyCursorError>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifyGetSms_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifyGetSms_t, Impl>
                ::template Wrap<&Impl::NotifyGetSms>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifyGetSmsFailed_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifyGetSmsFailed_t, Impl>
                ::template Wrap<&Impl::NotifyGetSmsFailed>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifyMessageCursorResult_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifyMessageCursorResult_t, Impl>
                ::template Wrap<&Impl::NotifyMessageCursorResult>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifySmsDeleteFailed_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifySmsDeleteFailed_t, Impl>
                ::template Wrap<&Impl::NotifySmsDeleteFailed>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifySmsDeleted_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifySmsDeleted_t, Impl>
                ::template Wrap<&Impl::NotifySmsDeleted>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifySmsDelivery_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifySmsDelivery_t, Impl>
                ::template Wrap<&Impl::NotifySmsDelivery>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifySmsMarkAsReadFailed_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifySmsMarkAsReadFailed_t, Impl>
                ::template Wrap<&Impl::NotifySmsMarkAsReadFailed>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifySmsMarkedAsRead_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifySmsMarkedAsRead_t, Impl>
                ::template Wrap<&Impl::NotifySmsMarkedAsRead>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifySmsReceived_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifySmsReceived_t, Impl>
                ::template Wrap<&Impl::NotifySmsReceived>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifySmsSendFailed_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifySmsSendFailed_t, Impl>
                ::template Wrap<&Impl::NotifySmsSendFailed>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifySmsSent_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifySmsSent_t, Impl>
                ::template Wrap<&Impl::NotifySmsSent>),

        mozilla::jni::MakeNativeMethod<GeckoSmsManager::NotifyThreadCursorResult_t>(
                mozilla::jni::NativeStub<GeckoSmsManager::NotifyThreadCursorResult_t, Impl>
                ::template Wrap<&Impl::NotifyThreadCursorResult>)
    };
};

template<class Impl>
constexpr JNINativeMethod GeckoSmsManager::Natives<Impl>::methods[];

template<class Impl>
class GeckoThread::Natives : public mozilla::jni::NativeImpl<GeckoThread, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<GeckoThread::CreateServices_t>(
                mozilla::jni::NativeStub<GeckoThread::CreateServices_t, Impl>
                ::template Wrap<&Impl::CreateServices>),

        mozilla::jni::MakeNativeMethod<GeckoThread::OnPause_t>(
                mozilla::jni::NativeStub<GeckoThread::OnPause_t, Impl>
                ::template Wrap<&Impl::OnPause>),

        mozilla::jni::MakeNativeMethod<GeckoThread::OnResume_t>(
                mozilla::jni::NativeStub<GeckoThread::OnResume_t, Impl>
                ::template Wrap<&Impl::OnResume>),

        mozilla::jni::MakeNativeMethod<GeckoThread::SpeculativeConnect_t>(
                mozilla::jni::NativeStub<GeckoThread::SpeculativeConnect_t, Impl>
                ::template Wrap<&Impl::SpeculativeConnect>),

        mozilla::jni::MakeNativeMethod<GeckoThread::WaitOnGecko_t>(
                mozilla::jni::NativeStub<GeckoThread::WaitOnGecko_t, Impl>
                ::template Wrap<&Impl::WaitOnGecko>)
    };
};

template<class Impl>
constexpr JNINativeMethod GeckoThread::Natives<Impl>::methods[];

template<class Impl>
class GeckoView::Window::Natives : public mozilla::jni::NativeImpl<Window, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<GeckoView::Window::Close_t>(
                mozilla::jni::NativeStub<GeckoView::Window::Close_t, Impl>
                ::template Wrap<&Impl::Close>),

        mozilla::jni::MakeNativeMethod<GeckoView::Window::DisposeNative_t>(
                mozilla::jni::NativeStub<GeckoView::Window::DisposeNative_t, Impl>
                ::template Wrap<&Impl::DisposeNative>),

        mozilla::jni::MakeNativeMethod<GeckoView::Window::Open_t>(
                mozilla::jni::NativeStub<GeckoView::Window::Open_t, Impl>
                ::template Wrap<&Impl::Open>),

        mozilla::jni::MakeNativeMethod<GeckoView::Window::Reattach_t>(
                mozilla::jni::NativeStub<GeckoView::Window::Reattach_t, Impl>
                ::template Wrap<&Impl::Reattach>)
    };
};

template<class Impl>
constexpr JNINativeMethod GeckoView::Window::Natives<Impl>::methods[];

template<class Impl>
class PrefsHelper::Natives : public mozilla::jni::NativeImpl<PrefsHelper, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<PrefsHelper::AddObserver_t>(
                mozilla::jni::NativeStub<PrefsHelper::AddObserver_t, Impl>
                ::template Wrap<&Impl::AddObserver>),

        mozilla::jni::MakeNativeMethod<PrefsHelper::GetPrefs_t>(
                mozilla::jni::NativeStub<PrefsHelper::GetPrefs_t, Impl>
                ::template Wrap<&Impl::GetPrefs>),

        mozilla::jni::MakeNativeMethod<PrefsHelper::RemoveObserver_t>(
                mozilla::jni::NativeStub<PrefsHelper::RemoveObserver_t, Impl>
                ::template Wrap<&Impl::RemoveObserver>),

        mozilla::jni::MakeNativeMethod<PrefsHelper::SetPref_t>(
                mozilla::jni::NativeStub<PrefsHelper::SetPref_t, Impl>
                ::template Wrap<&Impl::SetPref>)
    };
};

template<class Impl>
constexpr JNINativeMethod PrefsHelper::Natives<Impl>::methods[];

template<class Impl>
class GLController::Natives : public mozilla::jni::NativeImpl<GLController, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<GLController::AttachToJava_t>(
                mozilla::jni::NativeStub<GLController::AttachToJava_t, Impl>
                ::template Wrap<&Impl::AttachToJava>),

        mozilla::jni::MakeNativeMethod<GLController::CreateCompositor_t>(
                mozilla::jni::NativeStub<GLController::CreateCompositor_t, Impl>
                ::template Wrap<&Impl::CreateCompositor>),

        mozilla::jni::MakeNativeMethod<GLController::DisposeNative_t>(
                mozilla::jni::NativeStub<GLController::DisposeNative_t, Impl>
                ::template Wrap<&Impl::DisposeNative>),

        mozilla::jni::MakeNativeMethod<GLController::OnSizeChanged_t>(
                mozilla::jni::NativeStub<GLController::OnSizeChanged_t, Impl>
                ::template Wrap<&Impl::OnSizeChanged>),

        mozilla::jni::MakeNativeMethod<GLController::PauseCompositor_t>(
                mozilla::jni::NativeStub<GLController::PauseCompositor_t, Impl>
                ::template Wrap<&Impl::PauseCompositor>),

        mozilla::jni::MakeNativeMethod<GLController::SyncInvalidateAndScheduleComposite_t>(
                mozilla::jni::NativeStub<GLController::SyncInvalidateAndScheduleComposite_t, Impl>
                ::template Wrap<&Impl::SyncInvalidateAndScheduleComposite>),

        mozilla::jni::MakeNativeMethod<GLController::SyncResumeResizeCompositor_t>(
                mozilla::jni::NativeStub<GLController::SyncResumeResizeCompositor_t, Impl>
                ::template Wrap<&Impl::SyncResumeResizeCompositor>)
    };
};

template<class Impl>
constexpr JNINativeMethod GLController::Natives<Impl>::methods[];

template<class Impl>
class NativePanZoomController::Natives : public mozilla::jni::NativeImpl<NativePanZoomController, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<NativePanZoomController::AdjustScrollForSurfaceShift_t>(
                mozilla::jni::NativeStub<NativePanZoomController::AdjustScrollForSurfaceShift_t, Impl>
                ::template Wrap<&Impl::AdjustScrollForSurfaceShift>),

        mozilla::jni::MakeNativeMethod<NativePanZoomController::DisposeNative_t>(
                mozilla::jni::NativeStub<NativePanZoomController::DisposeNative_t, Impl>
                ::template Wrap<&Impl::DisposeNative>),

        mozilla::jni::MakeNativeMethod<NativePanZoomController::HandleMotionEvent_t>(
                mozilla::jni::NativeStub<NativePanZoomController::HandleMotionEvent_t, Impl>
                ::template Wrap<&Impl::HandleMotionEvent>),

        mozilla::jni::MakeNativeMethod<NativePanZoomController::HandleMotionEventVelocity_t>(
                mozilla::jni::NativeStub<NativePanZoomController::HandleMotionEventVelocity_t, Impl>
                ::template Wrap<&Impl::HandleMotionEventVelocity>),

        mozilla::jni::MakeNativeMethod<NativePanZoomController::HandleMouseEvent_t>(
                mozilla::jni::NativeStub<NativePanZoomController::HandleMouseEvent_t, Impl>
                ::template Wrap<&Impl::HandleMouseEvent>),

        mozilla::jni::MakeNativeMethod<NativePanZoomController::HandleScrollEvent_t>(
                mozilla::jni::NativeStub<NativePanZoomController::HandleScrollEvent_t, Impl>
                ::template Wrap<&Impl::HandleScrollEvent>),

        mozilla::jni::MakeNativeMethod<NativePanZoomController::AbortAnimation_t>(
                mozilla::jni::NativeStub<NativePanZoomController::AbortAnimation_t, Impl>
                ::template Wrap<&Impl::AbortAnimation>),

        mozilla::jni::MakeNativeMethod<NativePanZoomController::SetIsLongpressEnabled_t>(
                mozilla::jni::NativeStub<NativePanZoomController::SetIsLongpressEnabled_t, Impl>
                ::template Wrap<&Impl::SetIsLongpressEnabled>)
    };
};

template<class Impl>
constexpr JNINativeMethod NativePanZoomController::Natives<Impl>::methods[];

template<class Impl>
class NativeJSContainer::Natives : public mozilla::jni::NativeImpl<NativeJSContainer, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<NativeJSContainer::Clone2_t>(
                mozilla::jni::NativeStub<NativeJSContainer::Clone2_t, Impl>
                ::template Wrap<&Impl::Clone>),

        mozilla::jni::MakeNativeMethod<NativeJSContainer::DisposeNative_t>(
                mozilla::jni::NativeStub<NativeJSContainer::DisposeNative_t, Impl>
                ::template Wrap<&Impl::DisposeNative>)
    };
};

template<class Impl>
constexpr JNINativeMethod NativeJSContainer::Natives<Impl>::methods[];

template<class Impl>
class NativeJSObject::Natives : public mozilla::jni::NativeImpl<NativeJSObject, Impl>
{
public:
    static constexpr JNINativeMethod methods[] = {

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetBoolean_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetBoolean_t, Impl>
                ::template Wrap<&Impl::GetBoolean>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetBooleanArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetBooleanArray_t, Impl>
                ::template Wrap<&Impl::GetBooleanArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetBundle_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetBundle_t, Impl>
                ::template Wrap<&Impl::GetBundle>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetBundleArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetBundleArray_t, Impl>
                ::template Wrap<&Impl::GetBundleArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetDouble_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetDouble_t, Impl>
                ::template Wrap<&Impl::GetDouble>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetDoubleArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetDoubleArray_t, Impl>
                ::template Wrap<&Impl::GetDoubleArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetInt_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetInt_t, Impl>
                ::template Wrap<&Impl::GetInt>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetIntArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetIntArray_t, Impl>
                ::template Wrap<&Impl::GetIntArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetObject_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetObject_t, Impl>
                ::template Wrap<&Impl::GetObject>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetObjectArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetObjectArray_t, Impl>
                ::template Wrap<&Impl::GetObjectArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetString_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetString_t, Impl>
                ::template Wrap<&Impl::GetString>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::GetStringArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::GetStringArray_t, Impl>
                ::template Wrap<&Impl::GetStringArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::Has_t>(
                mozilla::jni::NativeStub<NativeJSObject::Has_t, Impl>
                ::template Wrap<&Impl::Has>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptBoolean_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptBoolean_t, Impl>
                ::template Wrap<&Impl::OptBoolean>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptBooleanArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptBooleanArray_t, Impl>
                ::template Wrap<&Impl::OptBooleanArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptBundle_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptBundle_t, Impl>
                ::template Wrap<&Impl::OptBundle>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptBundleArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptBundleArray_t, Impl>
                ::template Wrap<&Impl::OptBundleArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptDouble_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptDouble_t, Impl>
                ::template Wrap<&Impl::OptDouble>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptDoubleArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptDoubleArray_t, Impl>
                ::template Wrap<&Impl::OptDoubleArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptInt_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptInt_t, Impl>
                ::template Wrap<&Impl::OptInt>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptIntArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptIntArray_t, Impl>
                ::template Wrap<&Impl::OptIntArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptObject_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptObject_t, Impl>
                ::template Wrap<&Impl::OptObject>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptObjectArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptObjectArray_t, Impl>
                ::template Wrap<&Impl::OptObjectArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptString_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptString_t, Impl>
                ::template Wrap<&Impl::OptString>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::OptStringArray_t>(
                mozilla::jni::NativeStub<NativeJSObject::OptStringArray_t, Impl>
                ::template Wrap<&Impl::OptStringArray>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::ToBundle_t>(
                mozilla::jni::NativeStub<NativeJSObject::ToBundle_t, Impl>
                ::template Wrap<&Impl::ToBundle>),

        mozilla::jni::MakeNativeMethod<NativeJSObject::ToString_t>(
                mozilla::jni::NativeStub<NativeJSObject::ToString_t, Impl>
                ::template Wrap<&Impl::ToString>)
    };
};

template<class Impl>
constexpr JNINativeMethod NativeJSObject::Natives<Impl>::methods[];

} /* widget */
} /* mozilla */
#endif // GeneratedJNINatives_h
