// 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.

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

namespace mozilla {
namespace java {

const char ANRReporter::name[] =
        "org/mozilla/gecko/ANRReporter";

constexpr char ANRReporter::GetNativeStack_t::name[];
constexpr char ANRReporter::GetNativeStack_t::signature[];

constexpr char ANRReporter::ReleaseNativeStack_t::name[];
constexpr char ANRReporter::ReleaseNativeStack_t::signature[];

constexpr char ANRReporter::RequestNativeStack_t::name[];
constexpr char ANRReporter::RequestNativeStack_t::signature[];

const char AlarmReceiver::name[] =
        "org/mozilla/gecko/AlarmReceiver";

constexpr char AlarmReceiver::NotifyAlarmFired_t::name[];
constexpr char AlarmReceiver::NotifyAlarmFired_t::signature[];

const char AndroidGamepadManager::name[] =
        "org/mozilla/gecko/AndroidGamepadManager";

constexpr char AndroidGamepadManager::OnAxisChange_t::name[];
constexpr char AndroidGamepadManager::OnAxisChange_t::signature[];

constexpr char AndroidGamepadManager::OnButtonChange_t::name[];
constexpr char AndroidGamepadManager::OnButtonChange_t::signature[];

constexpr char AndroidGamepadManager::OnGamepadAdded_t::name[];
constexpr char AndroidGamepadManager::OnGamepadAdded_t::signature[];

auto AndroidGamepadManager::OnGamepadAdded(int32_t a0, int32_t a1) -> void
{
    return mozilla::jni::Method<OnGamepadAdded_t>::Call(AndroidGamepadManager::Context(), nullptr, a0, a1);
}

constexpr char AndroidGamepadManager::OnGamepadChange_t::name[];
constexpr char AndroidGamepadManager::OnGamepadChange_t::signature[];

constexpr char AndroidGamepadManager::Start_t::name[];
constexpr char AndroidGamepadManager::Start_t::signature[];

auto AndroidGamepadManager::Start() -> void
{
    return mozilla::jni::Method<Start_t>::Call(AndroidGamepadManager::Context(), nullptr);
}

constexpr char AndroidGamepadManager::Stop_t::name[];
constexpr char AndroidGamepadManager::Stop_t::signature[];

auto AndroidGamepadManager::Stop() -> void
{
    return mozilla::jni::Method<Stop_t>::Call(AndroidGamepadManager::Context(), nullptr);
}

const char GeckoAppShell::name[] =
        "org/mozilla/gecko/GeckoAppShell";

constexpr char GeckoAppShell::AddFullScreenPluginView_t::name[];
constexpr char GeckoAppShell::AddFullScreenPluginView_t::signature[];

auto GeckoAppShell::AddFullScreenPluginView(mozilla::jni::Object::Param a0) -> void
{
    return mozilla::jni::Method<AddFullScreenPluginView_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::CancelVibrate_t::name[];
constexpr char GeckoAppShell::CancelVibrate_t::signature[];

auto GeckoAppShell::CancelVibrate() -> void
{
    return mozilla::jni::Method<CancelVibrate_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::CheckURIVisited_t::name[];
constexpr char GeckoAppShell::CheckURIVisited_t::signature[];

auto GeckoAppShell::CheckURIVisited(mozilla::jni::String::Param a0) -> void
{
    return mozilla::jni::Method<CheckURIVisited_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::CloseCamera_t::name[];
constexpr char GeckoAppShell::CloseCamera_t::signature[];

auto GeckoAppShell::CloseCamera() -> void
{
    return mozilla::jni::Method<CloseCamera_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::CloseNotification_t::name[];
constexpr char GeckoAppShell::CloseNotification_t::signature[];

auto GeckoAppShell::CloseNotification(mozilla::jni::String::Param a0) -> void
{
    return mozilla::jni::Method<CloseNotification_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::ConnectionGetMimeType_t::name[];
constexpr char GeckoAppShell::ConnectionGetMimeType_t::signature[];

auto GeckoAppShell::ConnectionGetMimeType(mozilla::jni::Object::Param a0) -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<ConnectionGetMimeType_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::CreateInputStream_t::name[];
constexpr char GeckoAppShell::CreateInputStream_t::signature[];

auto GeckoAppShell::CreateInputStream(mozilla::jni::Object::Param a0) -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<CreateInputStream_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::CreateMessageCursor_t::name[];
constexpr char GeckoAppShell::CreateMessageCursor_t::signature[];

auto GeckoAppShell::CreateMessageCursor(int64_t a0, int64_t a1, mozilla::jni::ObjectArray::Param a2, int32_t a3, mozilla::jni::String::Param a4, bool a5, bool a6, bool a7, int64_t a8, bool a9, int32_t a10) -> void
{
    return mozilla::jni::Method<CreateMessageCursor_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
}

constexpr char GeckoAppShell::CreateShortcut_t::name[];
constexpr char GeckoAppShell::CreateShortcut_t::signature[];

auto GeckoAppShell::CreateShortcut(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> void
{
    return mozilla::jni::Method<CreateShortcut_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::CreateThreadCursor_t::name[];
constexpr char GeckoAppShell::CreateThreadCursor_t::signature[];

auto GeckoAppShell::CreateThreadCursor(int32_t a0) -> void
{
    return mozilla::jni::Method<CreateThreadCursor_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::DeleteMessage_t::name[];
constexpr char GeckoAppShell::DeleteMessage_t::signature[];

auto GeckoAppShell::DeleteMessage(int32_t a0, int32_t a1) -> void
{
    return mozilla::jni::Method<DeleteMessage_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::DisableAlarm_t::name[];
constexpr char GeckoAppShell::DisableAlarm_t::signature[];

auto GeckoAppShell::DisableAlarm() -> void
{
    return mozilla::jni::Method<DisableAlarm_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::DisableBatteryNotifications_t::name[];
constexpr char GeckoAppShell::DisableBatteryNotifications_t::signature[];

auto GeckoAppShell::DisableBatteryNotifications() -> void
{
    return mozilla::jni::Method<DisableBatteryNotifications_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::DisableNetworkNotifications_t::name[];
constexpr char GeckoAppShell::DisableNetworkNotifications_t::signature[];

auto GeckoAppShell::DisableNetworkNotifications() -> void
{
    return mozilla::jni::Method<DisableNetworkNotifications_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::DisableScreenOrientationNotifications_t::name[];
constexpr char GeckoAppShell::DisableScreenOrientationNotifications_t::signature[];

auto GeckoAppShell::DisableScreenOrientationNotifications() -> void
{
    return mozilla::jni::Method<DisableScreenOrientationNotifications_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::DisableSensor_t::name[];
constexpr char GeckoAppShell::DisableSensor_t::signature[];

auto GeckoAppShell::DisableSensor(int32_t a0) -> void
{
    return mozilla::jni::Method<DisableSensor_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::EnableBatteryNotifications_t::name[];
constexpr char GeckoAppShell::EnableBatteryNotifications_t::signature[];

auto GeckoAppShell::EnableBatteryNotifications() -> void
{
    return mozilla::jni::Method<EnableBatteryNotifications_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::EnableLocation_t::name[];
constexpr char GeckoAppShell::EnableLocation_t::signature[];

auto GeckoAppShell::EnableLocation(bool a0) -> void
{
    return mozilla::jni::Method<EnableLocation_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::EnableLocationHighAccuracy_t::name[];
constexpr char GeckoAppShell::EnableLocationHighAccuracy_t::signature[];

auto GeckoAppShell::EnableLocationHighAccuracy(bool a0) -> void
{
    return mozilla::jni::Method<EnableLocationHighAccuracy_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::EnableNetworkNotifications_t::name[];
constexpr char GeckoAppShell::EnableNetworkNotifications_t::signature[];

auto GeckoAppShell::EnableNetworkNotifications() -> void
{
    return mozilla::jni::Method<EnableNetworkNotifications_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::EnableScreenOrientationNotifications_t::name[];
constexpr char GeckoAppShell::EnableScreenOrientationNotifications_t::signature[];

auto GeckoAppShell::EnableScreenOrientationNotifications() -> void
{
    return mozilla::jni::Method<EnableScreenOrientationNotifications_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::EnableSensor_t::name[];
constexpr char GeckoAppShell::EnableSensor_t::signature[];

auto GeckoAppShell::EnableSensor(int32_t a0) -> void
{
    return mozilla::jni::Method<EnableSensor_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::GetApplicationContext_t::name[];
constexpr char GeckoAppShell::GetApplicationContext_t::signature[];

auto GeckoAppShell::GetApplicationContext() -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<GetApplicationContext_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetConnection_t::name[];
constexpr char GeckoAppShell::GetConnection_t::signature[];

auto GeckoAppShell::GetConnection(mozilla::jni::String::Param a0) -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<GetConnection_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::GetContext_t::name[];
constexpr char GeckoAppShell::GetContext_t::signature[];

auto GeckoAppShell::GetContext() -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<GetContext_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetCurrentBatteryInformation_t::name[];
constexpr char GeckoAppShell::GetCurrentBatteryInformation_t::signature[];

auto GeckoAppShell::GetCurrentBatteryInformation() -> mozilla::jni::DoubleArray::LocalRef
{
    return mozilla::jni::Method<GetCurrentBatteryInformation_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetCurrentNetworkInformation_t::name[];
constexpr char GeckoAppShell::GetCurrentNetworkInformation_t::signature[];

auto GeckoAppShell::GetCurrentNetworkInformation() -> mozilla::jni::DoubleArray::LocalRef
{
    return mozilla::jni::Method<GetCurrentNetworkInformation_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetDensity_t::name[];
constexpr char GeckoAppShell::GetDensity_t::signature[];

auto GeckoAppShell::GetDensity() -> float
{
    return mozilla::jni::Method<GetDensity_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetDpi_t::name[];
constexpr char GeckoAppShell::GetDpi_t::signature[];

auto GeckoAppShell::GetDpi() -> int32_t
{
    return mozilla::jni::Method<GetDpi_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetExceptionStackTrace_t::name[];
constexpr char GeckoAppShell::GetExceptionStackTrace_t::signature[];

auto GeckoAppShell::GetExceptionStackTrace(mozilla::jni::Throwable::Param a0) -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<GetExceptionStackTrace_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::GetExtensionFromMimeType_t::name[];
constexpr char GeckoAppShell::GetExtensionFromMimeType_t::signature[];

auto GeckoAppShell::GetExtensionFromMimeType(mozilla::jni::String::Param a0) -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<GetExtensionFromMimeType_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::GetExternalPublicDirectory_t::name[];
constexpr char GeckoAppShell::GetExternalPublicDirectory_t::signature[];

auto GeckoAppShell::GetExternalPublicDirectory(mozilla::jni::String::Param a0) -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<GetExternalPublicDirectory_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::GetHWDecoderCapability_t::name[];
constexpr char GeckoAppShell::GetHWDecoderCapability_t::signature[];

auto GeckoAppShell::GetHWDecoderCapability() -> bool
{
    return mozilla::jni::Method<GetHWDecoderCapability_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetHWEncoderCapability_t::name[];
constexpr char GeckoAppShell::GetHWEncoderCapability_t::signature[];

auto GeckoAppShell::GetHWEncoderCapability() -> bool
{
    return mozilla::jni::Method<GetHWEncoderCapability_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetHandlersForMimeType_t::name[];
constexpr char GeckoAppShell::GetHandlersForMimeType_t::signature[];

auto GeckoAppShell::GetHandlersForMimeType(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> mozilla::jni::ObjectArray::LocalRef
{
    return mozilla::jni::Method<GetHandlersForMimeType_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::GetHandlersForURL_t::name[];
constexpr char GeckoAppShell::GetHandlersForURL_t::signature[];

auto GeckoAppShell::GetHandlersForURL(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> mozilla::jni::ObjectArray::LocalRef
{
    return mozilla::jni::Method<GetHandlersForURL_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::GetIconForExtension_t::name[];
constexpr char GeckoAppShell::GetIconForExtension_t::signature[];

auto GeckoAppShell::GetIconForExtension(mozilla::jni::String::Param a0, int32_t a1) -> mozilla::jni::ByteArray::LocalRef
{
    return mozilla::jni::Method<GetIconForExtension_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::GetMaxTouchPoints_t::name[];
constexpr char GeckoAppShell::GetMaxTouchPoints_t::signature[];

auto GeckoAppShell::GetMaxTouchPoints() -> int32_t
{
    return mozilla::jni::Method<GetMaxTouchPoints_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetMessage_t::name[];
constexpr char GeckoAppShell::GetMessage_t::signature[];

auto GeckoAppShell::GetMessage(int32_t a0, int32_t a1) -> void
{
    return mozilla::jni::Method<GetMessage_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::GetMimeTypeFromExtensions_t::name[];
constexpr char GeckoAppShell::GetMimeTypeFromExtensions_t::signature[];

auto GeckoAppShell::GetMimeTypeFromExtensions(mozilla::jni::String::Param a0) -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<GetMimeTypeFromExtensions_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::GetNetworkLinkType_t::name[];
constexpr char GeckoAppShell::GetNetworkLinkType_t::signature[];

auto GeckoAppShell::GetNetworkLinkType() -> int32_t
{
    return mozilla::jni::Method<GetNetworkLinkType_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetNextMessage_t::name[];
constexpr char GeckoAppShell::GetNextMessage_t::signature[];

auto GeckoAppShell::GetNextMessage(int32_t a0) -> void
{
    return mozilla::jni::Method<GetNextMessage_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::GetNextThread_t::name[];
constexpr char GeckoAppShell::GetNextThread_t::signature[];

auto GeckoAppShell::GetNextThread(int32_t a0) -> void
{
    return mozilla::jni::Method<GetNextThread_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::GetProxyForURI_t::name[];
constexpr char GeckoAppShell::GetProxyForURI_t::signature[];

auto GeckoAppShell::GetProxyForURI(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1, mozilla::jni::String::Param a2, int32_t a3) -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<GetProxyForURI_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1, a2, a3);
}

constexpr char GeckoAppShell::GetScreenAngle_t::name[];
constexpr char GeckoAppShell::GetScreenAngle_t::signature[];

auto GeckoAppShell::GetScreenAngle() -> int32_t
{
    return mozilla::jni::Method<GetScreenAngle_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetScreenDepth_t::name[];
constexpr char GeckoAppShell::GetScreenDepth_t::signature[];

auto GeckoAppShell::GetScreenDepth() -> int32_t
{
    return mozilla::jni::Method<GetScreenDepth_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetScreenOrientation_t::name[];
constexpr char GeckoAppShell::GetScreenOrientation_t::signature[];

auto GeckoAppShell::GetScreenOrientation() -> int16_t
{
    return mozilla::jni::Method<GetScreenOrientation_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetScreenSize_t::name[];
constexpr char GeckoAppShell::GetScreenSize_t::signature[];

auto GeckoAppShell::GetScreenSize() -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<GetScreenSize_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetShowPasswordSetting_t::name[];
constexpr char GeckoAppShell::GetShowPasswordSetting_t::signature[];

auto GeckoAppShell::GetShowPasswordSetting() -> bool
{
    return mozilla::jni::Method<GetShowPasswordSetting_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::GetSystemColors_t::name[];
constexpr char GeckoAppShell::GetSystemColors_t::signature[];

auto GeckoAppShell::GetSystemColors() -> mozilla::jni::IntArray::LocalRef
{
    return mozilla::jni::Method<GetSystemColors_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::HandleGeckoMessage_t::name[];
constexpr char GeckoAppShell::HandleGeckoMessage_t::signature[];

auto GeckoAppShell::HandleGeckoMessage(mozilla::jni::Object::Param a0) -> void
{
    return mozilla::jni::Method<HandleGeckoMessage_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::HandleUncaughtException_t::name[];
constexpr char GeckoAppShell::HandleUncaughtException_t::signature[];

auto GeckoAppShell::HandleUncaughtException(mozilla::jni::Throwable::Param a0) -> void
{
    return mozilla::jni::Method<HandleUncaughtException_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::HideProgressDialog_t::name[];
constexpr char GeckoAppShell::HideProgressDialog_t::signature[];

auto GeckoAppShell::HideProgressDialog() -> void
{
    return mozilla::jni::Method<HideProgressDialog_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::InitCamera_t::name[];
constexpr char GeckoAppShell::InitCamera_t::signature[];

auto GeckoAppShell::InitCamera(mozilla::jni::String::Param a0, int32_t a1, int32_t a2, int32_t a3) -> mozilla::jni::IntArray::LocalRef
{
    return mozilla::jni::Method<InitCamera_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1, a2, a3);
}

constexpr char GeckoAppShell::IsNetworkLinkKnown_t::name[];
constexpr char GeckoAppShell::IsNetworkLinkKnown_t::signature[];

auto GeckoAppShell::IsNetworkLinkKnown() -> bool
{
    return mozilla::jni::Method<IsNetworkLinkKnown_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::IsNetworkLinkUp_t::name[];
constexpr char GeckoAppShell::IsNetworkLinkUp_t::signature[];

auto GeckoAppShell::IsNetworkLinkUp() -> bool
{
    return mozilla::jni::Method<IsNetworkLinkUp_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::IsTablet_t::name[];
constexpr char GeckoAppShell::IsTablet_t::signature[];

auto GeckoAppShell::IsTablet() -> bool
{
    return mozilla::jni::Method<IsTablet_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::KillAnyZombies_t::name[];
constexpr char GeckoAppShell::KillAnyZombies_t::signature[];

auto GeckoAppShell::KillAnyZombies() -> void
{
    return mozilla::jni::Method<KillAnyZombies_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::LoadPluginClass_t::name[];
constexpr char GeckoAppShell::LoadPluginClass_t::signature[];

auto GeckoAppShell::LoadPluginClass(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> mozilla::jni::Class::LocalRef
{
    return mozilla::jni::Method<LoadPluginClass_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::LockScreenOrientation_t::name[];
constexpr char GeckoAppShell::LockScreenOrientation_t::signature[];

auto GeckoAppShell::LockScreenOrientation(int32_t a0) -> void
{
    return mozilla::jni::Method<LockScreenOrientation_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::MarkMessageRead_t::name[];
constexpr char GeckoAppShell::MarkMessageRead_t::signature[];

auto GeckoAppShell::MarkMessageRead(int32_t a0, bool a1, bool a2, int32_t a3) -> void
{
    return mozilla::jni::Method<MarkMessageRead_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1, a2, a3);
}

constexpr char GeckoAppShell::MarkURIVisited_t::name[];
constexpr char GeckoAppShell::MarkURIVisited_t::signature[];

auto GeckoAppShell::MarkURIVisited(mozilla::jni::String::Param a0) -> void
{
    return mozilla::jni::Method<MarkURIVisited_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::MoveTaskToBack_t::name[];
constexpr char GeckoAppShell::MoveTaskToBack_t::signature[];

auto GeckoAppShell::MoveTaskToBack() -> void
{
    return mozilla::jni::Method<MoveTaskToBack_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::NotifyObservers_t::name[];
constexpr char GeckoAppShell::NotifyObservers_t::signature[];

constexpr char GeckoAppShell::NotifyAlertListener_t::name[];
constexpr char GeckoAppShell::NotifyAlertListener_t::signature[];

constexpr char GeckoAppShell::NotifyUriVisited_t::name[];
constexpr char GeckoAppShell::NotifyUriVisited_t::signature[];

constexpr char GeckoAppShell::NotifyWakeLockChanged_t::name[];
constexpr char GeckoAppShell::NotifyWakeLockChanged_t::signature[];

auto GeckoAppShell::NotifyWakeLockChanged(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> void
{
    return mozilla::jni::Method<NotifyWakeLockChanged_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::OnFullScreenPluginHidden_t::name[];
constexpr char GeckoAppShell::OnFullScreenPluginHidden_t::signature[];

constexpr char GeckoAppShell::OnLocationChanged_t::name[];
constexpr char GeckoAppShell::OnLocationChanged_t::signature[];

constexpr char GeckoAppShell::OnSensorChanged_t::name[];
constexpr char GeckoAppShell::OnSensorChanged_t::signature[];

constexpr char GeckoAppShell::OpenUriExternal_t::name[];
constexpr char GeckoAppShell::OpenUriExternal_t::signature[];

auto GeckoAppShell::OpenUriExternal(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1, mozilla::jni::String::Param a2, mozilla::jni::String::Param a3, mozilla::jni::String::Param a4, mozilla::jni::String::Param a5) -> bool
{
    return mozilla::jni::Method<OpenUriExternal_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1, a2, a3, a4, a5);
}

constexpr char GeckoAppShell::PerformHapticFeedback_t::name[];
constexpr char GeckoAppShell::PerformHapticFeedback_t::signature[];

auto GeckoAppShell::PerformHapticFeedback(bool a0) -> void
{
    return mozilla::jni::Method<PerformHapticFeedback_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::RemoveFullScreenPluginView_t::name[];
constexpr char GeckoAppShell::RemoveFullScreenPluginView_t::signature[];

auto GeckoAppShell::RemoveFullScreenPluginView(mozilla::jni::Object::Param a0) -> void
{
    return mozilla::jni::Method<RemoveFullScreenPluginView_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::ReportJavaCrash_t::name[];
constexpr char GeckoAppShell::ReportJavaCrash_t::signature[];

constexpr char GeckoAppShell::ScheduleRestart_t::name[];
constexpr char GeckoAppShell::ScheduleRestart_t::signature[];

auto GeckoAppShell::ScheduleRestart() -> void
{
    return mozilla::jni::Method<ScheduleRestart_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::SendMessage_t::name[];
constexpr char GeckoAppShell::SendMessage_t::signature[];

auto GeckoAppShell::SendMessage(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1, int32_t a2) -> void
{
    return mozilla::jni::Method<SendMessage_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1, a2);
}

constexpr char GeckoAppShell::SetAlarm_t::name[];
constexpr char GeckoAppShell::SetAlarm_t::signature[];

auto GeckoAppShell::SetAlarm(int32_t a0, int32_t a1) -> bool
{
    return mozilla::jni::Method<SetAlarm_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::SetFullScreen_t::name[];
constexpr char GeckoAppShell::SetFullScreen_t::signature[];

auto GeckoAppShell::SetFullScreen(bool a0) -> void
{
    return mozilla::jni::Method<SetFullScreen_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::SetKeepScreenOn_t::name[];
constexpr char GeckoAppShell::SetKeepScreenOn_t::signature[];

auto GeckoAppShell::SetKeepScreenOn(bool a0) -> void
{
    return mozilla::jni::Method<SetKeepScreenOn_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::SetScreenDepthOverride_t::name[];
constexpr char GeckoAppShell::SetScreenDepthOverride_t::signature[];

auto GeckoAppShell::SetScreenDepthOverride(int32_t a0) -> void
{
    return mozilla::jni::Method<SetScreenDepthOverride_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::SetURITitle_t::name[];
constexpr char GeckoAppShell::SetURITitle_t::signature[];

auto GeckoAppShell::SetURITitle(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1) -> void
{
    return mozilla::jni::Method<SetURITitle_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

constexpr char GeckoAppShell::ShowAlertNotification_t::name[];
constexpr char GeckoAppShell::ShowAlertNotification_t::signature[];

auto GeckoAppShell::ShowAlertNotification(mozilla::jni::String::Param a0, mozilla::jni::String::Param a1, mozilla::jni::String::Param a2, mozilla::jni::String::Param a3, mozilla::jni::String::Param a4, mozilla::jni::String::Param a5, mozilla::jni::String::Param a6) -> void
{
    return mozilla::jni::Method<ShowAlertNotification_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1, a2, a3, a4, a5, a6);
}

constexpr char GeckoAppShell::SyncNotifyObservers_t::name[];
constexpr char GeckoAppShell::SyncNotifyObservers_t::signature[];

constexpr char GeckoAppShell::UnlockProfile_t::name[];
constexpr char GeckoAppShell::UnlockProfile_t::signature[];

auto GeckoAppShell::UnlockProfile() -> bool
{
    return mozilla::jni::Method<UnlockProfile_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::UnlockScreenOrientation_t::name[];
constexpr char GeckoAppShell::UnlockScreenOrientation_t::signature[];

auto GeckoAppShell::UnlockScreenOrientation() -> void
{
    return mozilla::jni::Method<UnlockScreenOrientation_t>::Call(GeckoAppShell::Context(), nullptr);
}

constexpr char GeckoAppShell::Vibrate_t::name[];
constexpr char GeckoAppShell::Vibrate_t::signature[];

auto GeckoAppShell::Vibrate(int64_t a0) -> void
{
    return mozilla::jni::Method<Vibrate_t>::Call(GeckoAppShell::Context(), nullptr, a0);
}

constexpr char GeckoAppShell::Vibrate2_t::name[];
constexpr char GeckoAppShell::Vibrate2_t::signature[];

auto GeckoAppShell::Vibrate(mozilla::jni::LongArray::Param a0, int32_t a1) -> void
{
    return mozilla::jni::Method<Vibrate2_t>::Call(GeckoAppShell::Context(), nullptr, a0, a1);
}

const char GeckoAppShell::CameraCallback::name[] =
        "org/mozilla/gecko/GeckoAppShell$CameraCallback";

constexpr char GeckoAppShell::CameraCallback::OnFrameData_t::name[];
constexpr char GeckoAppShell::CameraCallback::OnFrameData_t::signature[];

const char GeckoBatteryManager::name[] =
        "org/mozilla/gecko/GeckoBatteryManager";

constexpr char GeckoBatteryManager::OnBatteryChange_t::name[];
constexpr char GeckoBatteryManager::OnBatteryChange_t::signature[];

const char GeckoEditable::name[] =
        "org/mozilla/gecko/GeckoEditable";

constexpr char GeckoEditable::New_t::name[];
constexpr char GeckoEditable::New_t::signature[];

auto GeckoEditable::New(mozilla::jni::Object::Param a0) -> GeckoEditable::LocalRef
{
    return mozilla::jni::Constructor<New_t>::Call(GeckoEditable::Context(), nullptr, a0);
}

constexpr char GeckoEditable::DisposeNative_t::name[];
constexpr char GeckoEditable::DisposeNative_t::signature[];

constexpr char GeckoEditable::NotifyIME_t::name[];
constexpr char GeckoEditable::NotifyIME_t::signature[];

auto GeckoEditable::NotifyIME(int32_t a0) const -> void
{
    return mozilla::jni::Method<NotifyIME_t>::Call(GeckoEditable::mCtx, nullptr, a0);
}

constexpr char GeckoEditable::NotifyIMEContext_t::name[];
constexpr char GeckoEditable::NotifyIMEContext_t::signature[];

auto GeckoEditable::NotifyIMEContext(int32_t a0, mozilla::jni::String::Param a1, mozilla::jni::String::Param a2, mozilla::jni::String::Param a3) const -> void
{
    return mozilla::jni::Method<NotifyIMEContext_t>::Call(GeckoEditable::mCtx, nullptr, a0, a1, a2, a3);
}

constexpr char GeckoEditable::OnDefaultKeyEvent_t::name[];
constexpr char GeckoEditable::OnDefaultKeyEvent_t::signature[];

auto GeckoEditable::OnDefaultKeyEvent(mozilla::jni::Object::Param a0) const -> void
{
    return mozilla::jni::Method<OnDefaultKeyEvent_t>::Call(GeckoEditable::mCtx, nullptr, a0);
}

constexpr char GeckoEditable::OnImeAcknowledgeFocus_t::name[];
constexpr char GeckoEditable::OnImeAcknowledgeFocus_t::signature[];

constexpr char GeckoEditable::OnImeAddCompositionRange_t::name[];
constexpr char GeckoEditable::OnImeAddCompositionRange_t::signature[];

constexpr char GeckoEditable::OnImeReplaceText_t::name[];
constexpr char GeckoEditable::OnImeReplaceText_t::signature[];

constexpr char GeckoEditable::OnImeRequestCursorUpdates_t::name[];
constexpr char GeckoEditable::OnImeRequestCursorUpdates_t::signature[];

constexpr char GeckoEditable::OnImeSynchronize_t::name[];
constexpr char GeckoEditable::OnImeSynchronize_t::signature[];

constexpr char GeckoEditable::OnImeUpdateComposition_t::name[];
constexpr char GeckoEditable::OnImeUpdateComposition_t::signature[];

constexpr char GeckoEditable::OnKeyEvent_t::name[];
constexpr char GeckoEditable::OnKeyEvent_t::signature[];

constexpr char GeckoEditable::OnSelectionChange_t::name[];
constexpr char GeckoEditable::OnSelectionChange_t::signature[];

auto GeckoEditable::OnSelectionChange(int32_t a0, int32_t a1) const -> void
{
    return mozilla::jni::Method<OnSelectionChange_t>::Call(GeckoEditable::mCtx, nullptr, a0, a1);
}

constexpr char GeckoEditable::OnTextChange_t::name[];
constexpr char GeckoEditable::OnTextChange_t::signature[];

auto GeckoEditable::OnTextChange(mozilla::jni::String::Param a0, int32_t a1, int32_t a2, int32_t a3) const -> void
{
    return mozilla::jni::Method<OnTextChange_t>::Call(GeckoEditable::mCtx, nullptr, a0, a1, a2, a3);
}

constexpr char GeckoEditable::OnViewChange_t::name[];
constexpr char GeckoEditable::OnViewChange_t::signature[];

auto GeckoEditable::OnViewChange(mozilla::jni::Object::Param a0) const -> void
{
    return mozilla::jni::Method<OnViewChange_t>::Call(GeckoEditable::mCtx, nullptr, a0);
}

constexpr char GeckoEditable::UpdateCompositionRects_t::name[];
constexpr char GeckoEditable::UpdateCompositionRects_t::signature[];

auto GeckoEditable::UpdateCompositionRects(mozilla::jni::ObjectArray::Param a0) const -> void
{
    return mozilla::jni::Method<UpdateCompositionRects_t>::Call(GeckoEditable::mCtx, nullptr, a0);
}

const char GeckoEditableListener::name[] =
        "org/mozilla/gecko/GeckoEditableListener";

const char GeckoJavaSampler::name[] =
        "org/mozilla/gecko/GeckoJavaSampler";

constexpr char GeckoJavaSampler::GetFrameName_t::name[];
constexpr char GeckoJavaSampler::GetFrameName_t::signature[];

auto GeckoJavaSampler::GetFrameName(int32_t a0, int32_t a1, int32_t a2) -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<GetFrameName_t>::Call(GeckoJavaSampler::Context(), nullptr, a0, a1, a2);
}

constexpr char GeckoJavaSampler::GetProfilerTime_t::name[];
constexpr char GeckoJavaSampler::GetProfilerTime_t::signature[];

constexpr char GeckoJavaSampler::GetSampleTime_t::name[];
constexpr char GeckoJavaSampler::GetSampleTime_t::signature[];

auto GeckoJavaSampler::GetSampleTime(int32_t a0, int32_t a1) -> double
{
    return mozilla::jni::Method<GetSampleTime_t>::Call(GeckoJavaSampler::Context(), nullptr, a0, a1);
}

constexpr char GeckoJavaSampler::GetThreadName_t::name[];
constexpr char GeckoJavaSampler::GetThreadName_t::signature[];

auto GeckoJavaSampler::GetThreadName(int32_t a0) -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<GetThreadName_t>::Call(GeckoJavaSampler::Context(), nullptr, a0);
}

constexpr char GeckoJavaSampler::Pause_t::name[];
constexpr char GeckoJavaSampler::Pause_t::signature[];

auto GeckoJavaSampler::Pause() -> void
{
    return mozilla::jni::Method<Pause_t>::Call(GeckoJavaSampler::Context(), nullptr);
}

constexpr char GeckoJavaSampler::Start_t::name[];
constexpr char GeckoJavaSampler::Start_t::signature[];

auto GeckoJavaSampler::Start(int32_t a0, int32_t a1) -> void
{
    return mozilla::jni::Method<Start_t>::Call(GeckoJavaSampler::Context(), nullptr, a0, a1);
}

constexpr char GeckoJavaSampler::Stop_t::name[];
constexpr char GeckoJavaSampler::Stop_t::signature[];

auto GeckoJavaSampler::Stop() -> void
{
    return mozilla::jni::Method<Stop_t>::Call(GeckoJavaSampler::Context(), nullptr);
}

constexpr char GeckoJavaSampler::Unpause_t::name[];
constexpr char GeckoJavaSampler::Unpause_t::signature[];

auto GeckoJavaSampler::Unpause() -> void
{
    return mozilla::jni::Method<Unpause_t>::Call(GeckoJavaSampler::Context(), nullptr);
}

const char GeckoNetworkManager::name[] =
        "org/mozilla/gecko/GeckoNetworkManager";

constexpr char GeckoNetworkManager::OnConnectionChanged_t::name[];
constexpr char GeckoNetworkManager::OnConnectionChanged_t::signature[];

constexpr char GeckoNetworkManager::OnStatusChanged_t::name[];
constexpr char GeckoNetworkManager::OnStatusChanged_t::signature[];

const char GeckoScreenOrientation::name[] =
        "org/mozilla/gecko/GeckoScreenOrientation";

constexpr char GeckoScreenOrientation::OnOrientationChange_t::name[];
constexpr char GeckoScreenOrientation::OnOrientationChange_t::signature[];

const char GeckoSmsManager::name[] =
        "org/mozilla/gecko/GeckoSmsManager";

constexpr char GeckoSmsManager::NotifyCursorDone_t::name[];
constexpr char GeckoSmsManager::NotifyCursorDone_t::signature[];

constexpr char GeckoSmsManager::NotifyCursorError_t::name[];
constexpr char GeckoSmsManager::NotifyCursorError_t::signature[];

constexpr char GeckoSmsManager::NotifyGetSms_t::name[];
constexpr char GeckoSmsManager::NotifyGetSms_t::signature[];

constexpr char GeckoSmsManager::NotifyGetSmsFailed_t::name[];
constexpr char GeckoSmsManager::NotifyGetSmsFailed_t::signature[];

constexpr char GeckoSmsManager::NotifyMessageCursorResult_t::name[];
constexpr char GeckoSmsManager::NotifyMessageCursorResult_t::signature[];

constexpr char GeckoSmsManager::NotifySmsDeleteFailed_t::name[];
constexpr char GeckoSmsManager::NotifySmsDeleteFailed_t::signature[];

constexpr char GeckoSmsManager::NotifySmsDeleted_t::name[];
constexpr char GeckoSmsManager::NotifySmsDeleted_t::signature[];

constexpr char GeckoSmsManager::NotifySmsDelivery_t::name[];
constexpr char GeckoSmsManager::NotifySmsDelivery_t::signature[];

constexpr char GeckoSmsManager::NotifySmsMarkAsReadFailed_t::name[];
constexpr char GeckoSmsManager::NotifySmsMarkAsReadFailed_t::signature[];

constexpr char GeckoSmsManager::NotifySmsMarkedAsRead_t::name[];
constexpr char GeckoSmsManager::NotifySmsMarkedAsRead_t::signature[];

constexpr char GeckoSmsManager::NotifySmsReceived_t::name[];
constexpr char GeckoSmsManager::NotifySmsReceived_t::signature[];

constexpr char GeckoSmsManager::NotifySmsSendFailed_t::name[];
constexpr char GeckoSmsManager::NotifySmsSendFailed_t::signature[];

constexpr char GeckoSmsManager::NotifySmsSent_t::name[];
constexpr char GeckoSmsManager::NotifySmsSent_t::signature[];

constexpr char GeckoSmsManager::NotifyThreadCursorResult_t::name[];
constexpr char GeckoSmsManager::NotifyThreadCursorResult_t::signature[];

const char GeckoThread::name[] =
        "org/mozilla/gecko/GeckoThread";

constexpr char GeckoThread::CheckAndSetState_t::name[];
constexpr char GeckoThread::CheckAndSetState_t::signature[];

auto GeckoThread::CheckAndSetState(mozilla::jni::Object::Param a0, mozilla::jni::Object::Param a1) -> bool
{
    return mozilla::jni::Method<CheckAndSetState_t>::Call(GeckoThread::Context(), nullptr, a0, a1);
}

constexpr char GeckoThread::CreateServices_t::name[];
constexpr char GeckoThread::CreateServices_t::signature[];

constexpr char GeckoThread::OnPause_t::name[];
constexpr char GeckoThread::OnPause_t::signature[];

constexpr char GeckoThread::OnResume_t::name[];
constexpr char GeckoThread::OnResume_t::signature[];

constexpr char GeckoThread::PumpMessageLoop_t::name[];
constexpr char GeckoThread::PumpMessageLoop_t::signature[];

auto GeckoThread::PumpMessageLoop(mozilla::jni::Object::Param a0) -> bool
{
    return mozilla::jni::Method<PumpMessageLoop_t>::Call(GeckoThread::Context(), nullptr, a0);
}

constexpr char GeckoThread::RequestUiThreadCallback_t::name[];
constexpr char GeckoThread::RequestUiThreadCallback_t::signature[];

auto GeckoThread::RequestUiThreadCallback(int64_t a0) -> void
{
    return mozilla::jni::Method<RequestUiThreadCallback_t>::Call(GeckoThread::Context(), nullptr, a0);
}

constexpr char GeckoThread::RunUiThreadCallback_t::name[];
constexpr char GeckoThread::RunUiThreadCallback_t::signature[];

constexpr char GeckoThread::SetState_t::name[];
constexpr char GeckoThread::SetState_t::signature[];

auto GeckoThread::SetState(mozilla::jni::Object::Param a0) -> void
{
    return mozilla::jni::Method<SetState_t>::Call(GeckoThread::Context(), nullptr, a0);
}

constexpr char GeckoThread::SpeculativeConnect_t::name[];
constexpr char GeckoThread::SpeculativeConnect_t::signature[];

constexpr char GeckoThread::WaitOnGecko_t::name[];
constexpr char GeckoThread::WaitOnGecko_t::signature[];

constexpr char GeckoThread::ClsLoader_t::name[];
constexpr char GeckoThread::ClsLoader_t::signature[];

auto GeckoThread::ClsLoader() -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Field<ClsLoader_t>::Get(GeckoThread::Context(), nullptr);
}

constexpr char GeckoThread::MsgQueue_t::name[];
constexpr char GeckoThread::MsgQueue_t::signature[];

auto GeckoThread::MsgQueue() -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Field<MsgQueue_t>::Get(GeckoThread::Context(), nullptr);
}

auto GeckoThread::MsgQueue(mozilla::jni::Object::Param a0) -> void
{
    return mozilla::jni::Field<MsgQueue_t>::Set(GeckoThread::Context(), nullptr, a0);
}

const char GeckoThread::State::name[] =
        "org/mozilla/gecko/GeckoThread$State";

constexpr char GeckoThread::State::EXITED_t::name[];
constexpr char GeckoThread::State::EXITED_t::signature[];

auto GeckoThread::State::EXITED() -> State::LocalRef
{
    return mozilla::jni::Field<EXITED_t>::Get(State::Context(), nullptr);
}

constexpr char GeckoThread::State::EXITING_t::name[];
constexpr char GeckoThread::State::EXITING_t::signature[];

auto GeckoThread::State::EXITING() -> State::LocalRef
{
    return mozilla::jni::Field<EXITING_t>::Get(State::Context(), nullptr);
}

constexpr char GeckoThread::State::INITIAL_t::name[];
constexpr char GeckoThread::State::INITIAL_t::signature[];

auto GeckoThread::State::INITIAL() -> State::LocalRef
{
    return mozilla::jni::Field<INITIAL_t>::Get(State::Context(), nullptr);
}

constexpr char GeckoThread::State::JNI_READY_t::name[];
constexpr char GeckoThread::State::JNI_READY_t::signature[];

auto GeckoThread::State::JNI_READY() -> State::LocalRef
{
    return mozilla::jni::Field<JNI_READY_t>::Get(State::Context(), nullptr);
}

constexpr char GeckoThread::State::LAUNCHED_t::name[];
constexpr char GeckoThread::State::LAUNCHED_t::signature[];

auto GeckoThread::State::LAUNCHED() -> State::LocalRef
{
    return mozilla::jni::Field<LAUNCHED_t>::Get(State::Context(), nullptr);
}

constexpr char GeckoThread::State::LIBS_READY_t::name[];
constexpr char GeckoThread::State::LIBS_READY_t::signature[];

auto GeckoThread::State::LIBS_READY() -> State::LocalRef
{
    return mozilla::jni::Field<LIBS_READY_t>::Get(State::Context(), nullptr);
}

constexpr char GeckoThread::State::MOZGLUE_READY_t::name[];
constexpr char GeckoThread::State::MOZGLUE_READY_t::signature[];

auto GeckoThread::State::MOZGLUE_READY() -> State::LocalRef
{
    return mozilla::jni::Field<MOZGLUE_READY_t>::Get(State::Context(), nullptr);
}

constexpr char GeckoThread::State::PROFILE_READY_t::name[];
constexpr char GeckoThread::State::PROFILE_READY_t::signature[];

auto GeckoThread::State::PROFILE_READY() -> State::LocalRef
{
    return mozilla::jni::Field<PROFILE_READY_t>::Get(State::Context(), nullptr);
}

constexpr char GeckoThread::State::RUNNING_t::name[];
constexpr char GeckoThread::State::RUNNING_t::signature[];

auto GeckoThread::State::RUNNING() -> State::LocalRef
{
    return mozilla::jni::Field<RUNNING_t>::Get(State::Context(), nullptr);
}

const char GeckoView::name[] =
        "org/mozilla/gecko/GeckoView";

const char GeckoView::Window::name[] =
        "org/mozilla/gecko/GeckoView$Window";

constexpr char GeckoView::Window::Close_t::name[];
constexpr char GeckoView::Window::Close_t::signature[];

constexpr char GeckoView::Window::DisposeNative_t::name[];
constexpr char GeckoView::Window::DisposeNative_t::signature[];

constexpr char GeckoView::Window::LoadUri_t::name[];
constexpr char GeckoView::Window::LoadUri_t::signature[];

constexpr char GeckoView::Window::Open_t::name[];
constexpr char GeckoView::Window::Open_t::signature[];

constexpr char GeckoView::Window::Reattach_t::name[];
constexpr char GeckoView::Window::Reattach_t::signature[];

const char PrefsHelper::name[] =
        "org/mozilla/gecko/PrefsHelper";

constexpr char PrefsHelper::CallPrefHandler_t::name[];
constexpr char PrefsHelper::CallPrefHandler_t::signature[];

auto PrefsHelper::CallPrefHandler(mozilla::jni::Object::Param a0, int32_t a1, mozilla::jni::String::Param a2, bool a3, int32_t a4, mozilla::jni::String::Param a5) -> void
{
    return mozilla::jni::Method<CallPrefHandler_t>::Call(PrefsHelper::Context(), nullptr, a0, a1, a2, a3, a4, a5);
}

constexpr char PrefsHelper::AddObserver_t::name[];
constexpr char PrefsHelper::AddObserver_t::signature[];

constexpr char PrefsHelper::GetPrefs_t::name[];
constexpr char PrefsHelper::GetPrefs_t::signature[];

constexpr char PrefsHelper::RemoveObserver_t::name[];
constexpr char PrefsHelper::RemoveObserver_t::signature[];

constexpr char PrefsHelper::SetPref_t::name[];
constexpr char PrefsHelper::SetPref_t::signature[];

constexpr char PrefsHelper::OnPrefChange_t::name[];
constexpr char PrefsHelper::OnPrefChange_t::signature[];

auto PrefsHelper::OnPrefChange(mozilla::jni::String::Param a0, int32_t a1, bool a2, int32_t a3, mozilla::jni::String::Param a4) -> void
{
    return mozilla::jni::Method<OnPrefChange_t>::Call(PrefsHelper::Context(), nullptr, a0, a1, a2, a3, a4);
}

const char SurfaceTextureListener::name[] =
        "org/mozilla/gecko/SurfaceTextureListener";

constexpr char SurfaceTextureListener::New_t::name[];
constexpr char SurfaceTextureListener::New_t::signature[];

auto SurfaceTextureListener::New() -> SurfaceTextureListener::LocalRef
{
    return mozilla::jni::Constructor<New_t>::Call(SurfaceTextureListener::Context(), nullptr);
}

constexpr char SurfaceTextureListener::OnFrameAvailable_t::name[];
constexpr char SurfaceTextureListener::OnFrameAvailable_t::signature[];

const char DisplayPortMetrics::name[] =
        "org/mozilla/gecko/gfx/DisplayPortMetrics";

constexpr char DisplayPortMetrics::New_t::name[];
constexpr char DisplayPortMetrics::New_t::signature[];

auto DisplayPortMetrics::New(float a0, float a1, float a2, float a3, float a4) -> DisplayPortMetrics::LocalRef
{
    return mozilla::jni::Constructor<New_t>::Call(DisplayPortMetrics::Context(), nullptr, a0, a1, a2, a3, a4);
}

constexpr char DisplayPortMetrics::MPosition_t::name[];
constexpr char DisplayPortMetrics::MPosition_t::signature[];

auto DisplayPortMetrics::MPosition() const -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Field<MPosition_t>::Get(DisplayPortMetrics::mCtx, nullptr);
}

constexpr char DisplayPortMetrics::Resolution_t::name[];
constexpr char DisplayPortMetrics::Resolution_t::signature[];

auto DisplayPortMetrics::Resolution() const -> float
{
    return mozilla::jni::Field<Resolution_t>::Get(DisplayPortMetrics::mCtx, nullptr);
}

const char GeckoLayerClient::name[] =
        "org/mozilla/gecko/gfx/GeckoLayerClient";

constexpr char GeckoLayerClient::ContentDocumentChanged_t::name[];
constexpr char GeckoLayerClient::ContentDocumentChanged_t::signature[];

auto GeckoLayerClient::ContentDocumentChanged() const -> void
{
    return mozilla::jni::Method<ContentDocumentChanged_t>::Call(GeckoLayerClient::mCtx, nullptr);
}

constexpr char GeckoLayerClient::CreateFrame_t::name[];
constexpr char GeckoLayerClient::CreateFrame_t::signature[];

auto GeckoLayerClient::CreateFrame() const -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<CreateFrame_t>::Call(GeckoLayerClient::mCtx, nullptr);
}

constexpr char GeckoLayerClient::IsContentDocumentDisplayed_t::name[];
constexpr char GeckoLayerClient::IsContentDocumentDisplayed_t::signature[];

auto GeckoLayerClient::IsContentDocumentDisplayed() const -> bool
{
    return mozilla::jni::Method<IsContentDocumentDisplayed_t>::Call(GeckoLayerClient::mCtx, nullptr);
}

constexpr char GeckoLayerClient::OnGeckoReady_t::name[];
constexpr char GeckoLayerClient::OnGeckoReady_t::signature[];

auto GeckoLayerClient::OnGeckoReady() const -> void
{
    return mozilla::jni::Method<OnGeckoReady_t>::Call(GeckoLayerClient::mCtx, nullptr);
}

constexpr char GeckoLayerClient::SetFirstPaintViewport_t::name[];
constexpr char GeckoLayerClient::SetFirstPaintViewport_t::signature[];

auto GeckoLayerClient::SetFirstPaintViewport(float a0, float a1, float a2, float a3, float a4, float a5, float a6) const -> void
{
    return mozilla::jni::Method<SetFirstPaintViewport_t>::Call(GeckoLayerClient::mCtx, nullptr, a0, a1, a2, a3, a4, a5, a6);
}

constexpr char GeckoLayerClient::SetPageRect_t::name[];
constexpr char GeckoLayerClient::SetPageRect_t::signature[];

auto GeckoLayerClient::SetPageRect(float a0, float a1, float a2, float a3) const -> void
{
    return mozilla::jni::Method<SetPageRect_t>::Call(GeckoLayerClient::mCtx, nullptr, a0, a1, a2, a3);
}

constexpr char GeckoLayerClient::SyncFrameMetrics_t::name[];
constexpr char GeckoLayerClient::SyncFrameMetrics_t::signature[];

auto GeckoLayerClient::SyncFrameMetrics(float a0, float a1, float a2, float a3, float a4, float a5, float a6, int32_t a7, int32_t a8, int32_t a9, int32_t a10, float a11, bool a12, int32_t a13) const -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<SyncFrameMetrics_t>::Call(GeckoLayerClient::mCtx, nullptr, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
}

constexpr char GeckoLayerClient::SyncViewportInfo_t::name[];
constexpr char GeckoLayerClient::SyncViewportInfo_t::signature[];

auto GeckoLayerClient::SyncViewportInfo(int32_t a0, int32_t a1, int32_t a2, int32_t a3, float a4, bool a5, int32_t a6) const -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<SyncViewportInfo_t>::Call(GeckoLayerClient::mCtx, nullptr, a0, a1, a2, a3, a4, a5, a6);
}

constexpr char GeckoLayerClient::SynthesizeNativeMouseEvent_t::name[];
constexpr char GeckoLayerClient::SynthesizeNativeMouseEvent_t::signature[];

auto GeckoLayerClient::SynthesizeNativeMouseEvent(int32_t a0, int32_t a1, int32_t a2) const -> void
{
    return mozilla::jni::Method<SynthesizeNativeMouseEvent_t>::Call(GeckoLayerClient::mCtx, nullptr, a0, a1, a2);
}

constexpr char GeckoLayerClient::SynthesizeNativeTouchPoint_t::name[];
constexpr char GeckoLayerClient::SynthesizeNativeTouchPoint_t::signature[];

auto GeckoLayerClient::SynthesizeNativeTouchPoint(int32_t a0, int32_t a1, int32_t a2, int32_t a3, double a4, int32_t a5) const -> void
{
    return mozilla::jni::Method<SynthesizeNativeTouchPoint_t>::Call(GeckoLayerClient::mCtx, nullptr, a0, a1, a2, a3, a4, a5);
}

constexpr char GeckoLayerClient::ClearColor_t::name[];
constexpr char GeckoLayerClient::ClearColor_t::signature[];

auto GeckoLayerClient::ClearColor() const -> int32_t
{
    return mozilla::jni::Field<ClearColor_t>::Get(GeckoLayerClient::mCtx, nullptr);
}

auto GeckoLayerClient::ClearColor(int32_t a0) const -> void
{
    return mozilla::jni::Field<ClearColor_t>::Set(GeckoLayerClient::mCtx, nullptr, a0);
}

const char ImmutableViewportMetrics::name[] =
        "org/mozilla/gecko/gfx/ImmutableViewportMetrics";

constexpr char ImmutableViewportMetrics::New_t::name[];
constexpr char ImmutableViewportMetrics::New_t::signature[];

auto ImmutableViewportMetrics::New(float a0, float a1, float a2, float a3, float a4, float a5, float a6, float a7, float a8, float a9, int32_t a10, int32_t a11, float a12) -> ImmutableViewportMetrics::LocalRef
{
    return mozilla::jni::Constructor<New_t>::Call(ImmutableViewportMetrics::Context(), nullptr, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
}

const char LayerRenderer::name[] =
        "org/mozilla/gecko/gfx/LayerRenderer";

const char LayerRenderer::Frame::name[] =
        "org/mozilla/gecko/gfx/LayerRenderer$Frame";

constexpr char LayerRenderer::Frame::BeginDrawing_t::name[];
constexpr char LayerRenderer::Frame::BeginDrawing_t::signature[];

auto LayerRenderer::Frame::BeginDrawing() const -> void
{
    return mozilla::jni::Method<BeginDrawing_t>::Call(Frame::mCtx, nullptr);
}

constexpr char LayerRenderer::Frame::EndDrawing_t::name[];
constexpr char LayerRenderer::Frame::EndDrawing_t::signature[];

auto LayerRenderer::Frame::EndDrawing() const -> void
{
    return mozilla::jni::Method<EndDrawing_t>::Call(Frame::mCtx, nullptr);
}

const char LayerView::name[] =
        "org/mozilla/gecko/gfx/LayerView";

constexpr char LayerView::GetCompositor_t::name[];
constexpr char LayerView::GetCompositor_t::signature[];

auto LayerView::GetCompositor() const -> mozilla::jni::Object::LocalRef
{
    return mozilla::jni::Method<GetCompositor_t>::Call(LayerView::mCtx, nullptr);
}

constexpr char LayerView::UpdateZoomedView_t::name[];
constexpr char LayerView::UpdateZoomedView_t::signature[];

auto LayerView::UpdateZoomedView(mozilla::jni::ByteBuffer::Param a0) -> void
{
    return mozilla::jni::Method<UpdateZoomedView_t>::Call(LayerView::Context(), nullptr, a0);
}

constexpr char LayerView::CompositorCreated_t::name[];
constexpr char LayerView::CompositorCreated_t::signature[];

auto LayerView::CompositorCreated() const -> bool
{
    return mozilla::jni::Field<CompositorCreated_t>::Get(LayerView::mCtx, nullptr);
}

auto LayerView::CompositorCreated(bool a0) const -> void
{
    return mozilla::jni::Field<CompositorCreated_t>::Set(LayerView::mCtx, nullptr, a0);
}

const char LayerView::Compositor::name[] =
        "org/mozilla/gecko/gfx/LayerView$Compositor";

constexpr char LayerView::Compositor::AttachToJava_t::name[];
constexpr char LayerView::Compositor::AttachToJava_t::signature[];

constexpr char LayerView::Compositor::CreateCompositor_t::name[];
constexpr char LayerView::Compositor::CreateCompositor_t::signature[];

constexpr char LayerView::Compositor::Destroy_t::name[];
constexpr char LayerView::Compositor::Destroy_t::signature[];

auto LayerView::Compositor::Destroy() const -> void
{
    return mozilla::jni::Method<Destroy_t>::Call(Compositor::mCtx, nullptr);
}

constexpr char LayerView::Compositor::DisposeNative_t::name[];
constexpr char LayerView::Compositor::DisposeNative_t::signature[];

constexpr char LayerView::Compositor::OnSizeChanged_t::name[];
constexpr char LayerView::Compositor::OnSizeChanged_t::signature[];

constexpr char LayerView::Compositor::Reattach_t::name[];
constexpr char LayerView::Compositor::Reattach_t::signature[];

auto LayerView::Compositor::Reattach() const -> void
{
    return mozilla::jni::Method<Reattach_t>::Call(Compositor::mCtx, nullptr);
}

constexpr char LayerView::Compositor::SyncInvalidateAndScheduleComposite_t::name[];
constexpr char LayerView::Compositor::SyncInvalidateAndScheduleComposite_t::signature[];

constexpr char LayerView::Compositor::SyncPauseCompositor_t::name[];
constexpr char LayerView::Compositor::SyncPauseCompositor_t::signature[];

constexpr char LayerView::Compositor::SyncResumeResizeCompositor_t::name[];
constexpr char LayerView::Compositor::SyncResumeResizeCompositor_t::signature[];

const char NativePanZoomController::name[] =
        "org/mozilla/gecko/gfx/NativePanZoomController";

constexpr char NativePanZoomController::AdjustScrollForSurfaceShift_t::name[];
constexpr char NativePanZoomController::AdjustScrollForSurfaceShift_t::signature[];

constexpr char NativePanZoomController::Destroy_t::name[];
constexpr char NativePanZoomController::Destroy_t::signature[];

auto NativePanZoomController::Destroy() const -> void
{
    return mozilla::jni::Method<Destroy_t>::Call(NativePanZoomController::mCtx, nullptr);
}

constexpr char NativePanZoomController::DisposeNative_t::name[];
constexpr char NativePanZoomController::DisposeNative_t::signature[];

constexpr char NativePanZoomController::HandleMotionEvent_t::name[];
constexpr char NativePanZoomController::HandleMotionEvent_t::signature[];

constexpr char NativePanZoomController::HandleMotionEventVelocity_t::name[];
constexpr char NativePanZoomController::HandleMotionEventVelocity_t::signature[];

constexpr char NativePanZoomController::HandleMouseEvent_t::name[];
constexpr char NativePanZoomController::HandleMouseEvent_t::signature[];

constexpr char NativePanZoomController::HandleScrollEvent_t::name[];
constexpr char NativePanZoomController::HandleScrollEvent_t::signature[];

constexpr char NativePanZoomController::SetIsLongpressEnabled_t::name[];
constexpr char NativePanZoomController::SetIsLongpressEnabled_t::signature[];

constexpr char NativePanZoomController::OnSelectionDragState_t::name[];
constexpr char NativePanZoomController::OnSelectionDragState_t::signature[];

auto NativePanZoomController::OnSelectionDragState(bool a0) const -> void
{
    return mozilla::jni::Method<OnSelectionDragState_t>::Call(NativePanZoomController::mCtx, nullptr, a0);
}

constexpr char NativePanZoomController::SetScrollingRootContent_t::name[];
constexpr char NativePanZoomController::SetScrollingRootContent_t::signature[];

auto NativePanZoomController::SetScrollingRootContent(bool a0) const -> void
{
    return mozilla::jni::Method<SetScrollingRootContent_t>::Call(NativePanZoomController::mCtx, nullptr, a0);
}

constexpr char NativePanZoomController::UpdateOverscrollOffset_t::name[];
constexpr char NativePanZoomController::UpdateOverscrollOffset_t::signature[];

auto NativePanZoomController::UpdateOverscrollOffset(float a0, float a1) const -> void
{
    return mozilla::jni::Method<UpdateOverscrollOffset_t>::Call(NativePanZoomController::mCtx, nullptr, a0, a1);
}

constexpr char NativePanZoomController::UpdateOverscrollVelocity_t::name[];
constexpr char NativePanZoomController::UpdateOverscrollVelocity_t::signature[];

auto NativePanZoomController::UpdateOverscrollVelocity(float a0, float a1) const -> void
{
    return mozilla::jni::Method<UpdateOverscrollVelocity_t>::Call(NativePanZoomController::mCtx, nullptr, a0, a1);
}

const char ProgressiveUpdateData::name[] =
        "org/mozilla/gecko/gfx/ProgressiveUpdateData";

constexpr char ProgressiveUpdateData::New_t::name[];
constexpr char ProgressiveUpdateData::New_t::signature[];

auto ProgressiveUpdateData::New() -> ProgressiveUpdateData::LocalRef
{
    return mozilla::jni::Constructor<New_t>::Call(ProgressiveUpdateData::Context(), nullptr);
}

constexpr char ProgressiveUpdateData::SetViewport_t::name[];
constexpr char ProgressiveUpdateData::SetViewport_t::signature[];

auto ProgressiveUpdateData::SetViewport(mozilla::jni::Object::Param a0) const -> void
{
    return mozilla::jni::Method<SetViewport_t>::Call(ProgressiveUpdateData::mCtx, nullptr, a0);
}

constexpr char ProgressiveUpdateData::Abort_t::name[];
constexpr char ProgressiveUpdateData::Abort_t::signature[];

auto ProgressiveUpdateData::Abort() const -> bool
{
    return mozilla::jni::Field<Abort_t>::Get(ProgressiveUpdateData::mCtx, nullptr);
}

auto ProgressiveUpdateData::Abort(bool a0) const -> void
{
    return mozilla::jni::Field<Abort_t>::Set(ProgressiveUpdateData::mCtx, nullptr, a0);
}

constexpr char ProgressiveUpdateData::Scale_t::name[];
constexpr char ProgressiveUpdateData::Scale_t::signature[];

auto ProgressiveUpdateData::Scale() const -> float
{
    return mozilla::jni::Field<Scale_t>::Get(ProgressiveUpdateData::mCtx, nullptr);
}

auto ProgressiveUpdateData::Scale(float a0) const -> void
{
    return mozilla::jni::Field<Scale_t>::Set(ProgressiveUpdateData::mCtx, nullptr, a0);
}

constexpr char ProgressiveUpdateData::X_t::name[];
constexpr char ProgressiveUpdateData::X_t::signature[];

auto ProgressiveUpdateData::X() const -> float
{
    return mozilla::jni::Field<X_t>::Get(ProgressiveUpdateData::mCtx, nullptr);
}

auto ProgressiveUpdateData::X(float a0) const -> void
{
    return mozilla::jni::Field<X_t>::Set(ProgressiveUpdateData::mCtx, nullptr, a0);
}

constexpr char ProgressiveUpdateData::Y_t::name[];
constexpr char ProgressiveUpdateData::Y_t::signature[];

auto ProgressiveUpdateData::Y() const -> float
{
    return mozilla::jni::Field<Y_t>::Get(ProgressiveUpdateData::mCtx, nullptr);
}

auto ProgressiveUpdateData::Y(float a0) const -> void
{
    return mozilla::jni::Field<Y_t>::Set(ProgressiveUpdateData::mCtx, nullptr, a0);
}

const char StackScroller::name[] =
        "org/mozilla/gecko/gfx/StackScroller";

constexpr char StackScroller::New_t::name[];
constexpr char StackScroller::New_t::signature[];

auto StackScroller::New(mozilla::jni::Object::Param a0, StackScroller::LocalRef* a1) -> nsresult
{
    MOZ_ASSERT(a1);
    nsresult rv = NS_OK;
    *a1 = mozilla::jni::Constructor<New_t>::Call(StackScroller::Context(), &rv, a0);
    return rv;
}

constexpr char StackScroller::AbortAnimation_t::name[];
constexpr char StackScroller::AbortAnimation_t::signature[];

auto StackScroller::AbortAnimation() const -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Method<AbortAnimation_t>::Call(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::ComputeScrollOffset_t::name[];
constexpr char StackScroller::ComputeScrollOffset_t::signature[];

auto StackScroller::ComputeScrollOffset(int64_t a0, bool* a1) const -> nsresult
{
    MOZ_ASSERT(a1);
    nsresult rv = NS_OK;
    *a1 = mozilla::jni::Method<ComputeScrollOffset_t>::Call(StackScroller::mCtx, &rv, a0);
    return rv;
}

constexpr char StackScroller::Fling_t::name[];
constexpr char StackScroller::Fling_t::signature[];

auto StackScroller::Fling(int32_t a0, int32_t a1, int32_t a2, int32_t a3, int32_t a4, int32_t a5, int32_t a6, int32_t a7, int32_t a8, int32_t a9, int64_t a10) const -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Method<Fling_t>::Call(StackScroller::mCtx, &rv, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
    return rv;
}

constexpr char StackScroller::ForceFinished_t::name[];
constexpr char StackScroller::ForceFinished_t::signature[];

auto StackScroller::ForceFinished(bool a0) const -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Method<ForceFinished_t>::Call(StackScroller::mCtx, &rv, a0);
    return rv;
}

constexpr char StackScroller::GetCurrSpeedX_t::name[];
constexpr char StackScroller::GetCurrSpeedX_t::signature[];

auto StackScroller::GetCurrSpeedX(float* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Method<GetCurrSpeedX_t>::Call(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::GetCurrSpeedY_t::name[];
constexpr char StackScroller::GetCurrSpeedY_t::signature[];

auto StackScroller::GetCurrSpeedY(float* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Method<GetCurrSpeedY_t>::Call(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::GetCurrX_t::name[];
constexpr char StackScroller::GetCurrX_t::signature[];

auto StackScroller::GetCurrX(int32_t* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Method<GetCurrX_t>::Call(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::GetCurrY_t::name[];
constexpr char StackScroller::GetCurrY_t::signature[];

auto StackScroller::GetCurrY(int32_t* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Method<GetCurrY_t>::Call(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::GetFinalX_t::name[];
constexpr char StackScroller::GetFinalX_t::signature[];

auto StackScroller::GetFinalX(int32_t* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Method<GetFinalX_t>::Call(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::GetFinalY_t::name[];
constexpr char StackScroller::GetFinalY_t::signature[];

auto StackScroller::GetFinalY(int32_t* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Method<GetFinalY_t>::Call(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::InitContants_t::name[];
constexpr char StackScroller::InitContants_t::signature[];

auto StackScroller::InitContants() -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Method<InitContants_t>::Call(StackScroller::Context(), &rv);
    return rv;
}

constexpr char StackScroller::IsFinished_t::name[];
constexpr char StackScroller::IsFinished_t::signature[];

auto StackScroller::IsFinished(bool* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Method<IsFinished_t>::Call(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::SetFinalX_t::name[];
constexpr char StackScroller::SetFinalX_t::signature[];

auto StackScroller::SetFinalX(int32_t a0) const -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Method<SetFinalX_t>::Call(StackScroller::mCtx, &rv, a0);
    return rv;
}

constexpr char StackScroller::SpringBack_t::name[];
constexpr char StackScroller::SpringBack_t::signature[];

auto StackScroller::SpringBack(int32_t a0, int32_t a1, int32_t a2, int32_t a3, int32_t a4, int32_t a5, int64_t a6, bool* a7) const -> nsresult
{
    MOZ_ASSERT(a7);
    nsresult rv = NS_OK;
    *a7 = mozilla::jni::Method<SpringBack_t>::Call(StackScroller::mCtx, &rv, a0, a1, a2, a3, a4, a5, a6);
    return rv;
}

constexpr char StackScroller::StartScroll_t::name[];
constexpr char StackScroller::StartScroll_t::signature[];

auto StackScroller::StartScroll(int32_t a0, int32_t a1, int32_t a2, int32_t a3, int64_t a4, int32_t a5) const -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Method<StartScroll_t>::Call(StackScroller::mCtx, &rv, a0, a1, a2, a3, a4, a5);
    return rv;
}

constexpr char StackScroller::ViscousFluid_t::name[];
constexpr char StackScroller::ViscousFluid_t::signature[];

auto StackScroller::ViscousFluid(float a0, float* a1) -> nsresult
{
    MOZ_ASSERT(a1);
    nsresult rv = NS_OK;
    *a1 = mozilla::jni::Method<ViscousFluid_t>::Call(StackScroller::Context(), &rv, a0);
    return rv;
}

constexpr char StackScroller::MFlywheel_t::name[];
constexpr char StackScroller::MFlywheel_t::signature[];

auto StackScroller::MFlywheel(bool* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Field<MFlywheel_t>::Get(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::MMode_t::name[];
constexpr char StackScroller::MMode_t::signature[];

auto StackScroller::MMode(int32_t* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Field<MMode_t>::Get(StackScroller::mCtx, &rv);
    return rv;
}

auto StackScroller::MMode(int32_t a0) const -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Field<MMode_t>::Set(StackScroller::mCtx, &rv, a0);
    return rv;
}

constexpr char StackScroller::MScrollerX_t::name[];
constexpr char StackScroller::MScrollerX_t::signature[];

auto StackScroller::MScrollerX(mozilla::jni::Object::LocalRef* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Field<MScrollerX_t>::Get(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::MScrollerY_t::name[];
constexpr char StackScroller::MScrollerY_t::signature[];

auto StackScroller::MScrollerY(mozilla::jni::Object::LocalRef* a0) const -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Field<MScrollerY_t>::Get(StackScroller::mCtx, &rv);
    return rv;
}

constexpr char StackScroller::SViscousFluidNormalize_t::name[];
constexpr char StackScroller::SViscousFluidNormalize_t::signature[];

auto StackScroller::SViscousFluidNormalize(float* a0) -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Field<SViscousFluidNormalize_t>::Get(StackScroller::Context(), &rv);
    return rv;
}

auto StackScroller::SViscousFluidNormalize(float a0) -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Field<SViscousFluidNormalize_t>::Set(StackScroller::Context(), &rv, a0);
    return rv;
}

constexpr char StackScroller::SViscousFluidScale_t::name[];
constexpr char StackScroller::SViscousFluidScale_t::signature[];

auto StackScroller::SViscousFluidScale(float* a0) -> nsresult
{
    MOZ_ASSERT(a0);
    nsresult rv = NS_OK;
    *a0 = mozilla::jni::Field<SViscousFluidScale_t>::Get(StackScroller::Context(), &rv);
    return rv;
}

auto StackScroller::SViscousFluidScale(float a0) -> nsresult
{
    nsresult rv = NS_OK;
    mozilla::jni::Field<SViscousFluidScale_t>::Set(StackScroller::Context(), &rv, a0);
    return rv;
}

const char ViewTransform::name[] =
        "org/mozilla/gecko/gfx/ViewTransform";

constexpr char ViewTransform::New_t::name[];
constexpr char ViewTransform::New_t::signature[];

auto ViewTransform::New(float a0, float a1, float a2) -> ViewTransform::LocalRef
{
    return mozilla::jni::Constructor<New_t>::Call(ViewTransform::Context(), nullptr, a0, a1, a2);
}

constexpr char ViewTransform::FixedLayerMarginBottom_t::name[];
constexpr char ViewTransform::FixedLayerMarginBottom_t::signature[];

auto ViewTransform::FixedLayerMarginBottom() const -> float
{
    return mozilla::jni::Field<FixedLayerMarginBottom_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::FixedLayerMarginBottom(float a0) const -> void
{
    return mozilla::jni::Field<FixedLayerMarginBottom_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

constexpr char ViewTransform::FixedLayerMarginLeft_t::name[];
constexpr char ViewTransform::FixedLayerMarginLeft_t::signature[];

auto ViewTransform::FixedLayerMarginLeft() const -> float
{
    return mozilla::jni::Field<FixedLayerMarginLeft_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::FixedLayerMarginLeft(float a0) const -> void
{
    return mozilla::jni::Field<FixedLayerMarginLeft_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

constexpr char ViewTransform::FixedLayerMarginRight_t::name[];
constexpr char ViewTransform::FixedLayerMarginRight_t::signature[];

auto ViewTransform::FixedLayerMarginRight() const -> float
{
    return mozilla::jni::Field<FixedLayerMarginRight_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::FixedLayerMarginRight(float a0) const -> void
{
    return mozilla::jni::Field<FixedLayerMarginRight_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

constexpr char ViewTransform::FixedLayerMarginTop_t::name[];
constexpr char ViewTransform::FixedLayerMarginTop_t::signature[];

auto ViewTransform::FixedLayerMarginTop() const -> float
{
    return mozilla::jni::Field<FixedLayerMarginTop_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::FixedLayerMarginTop(float a0) const -> void
{
    return mozilla::jni::Field<FixedLayerMarginTop_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

constexpr char ViewTransform::Height_t::name[];
constexpr char ViewTransform::Height_t::signature[];

auto ViewTransform::Height() const -> float
{
    return mozilla::jni::Field<Height_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::Height(float a0) const -> void
{
    return mozilla::jni::Field<Height_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

constexpr char ViewTransform::Scale_t::name[];
constexpr char ViewTransform::Scale_t::signature[];

auto ViewTransform::Scale() const -> float
{
    return mozilla::jni::Field<Scale_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::Scale(float a0) const -> void
{
    return mozilla::jni::Field<Scale_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

constexpr char ViewTransform::Width_t::name[];
constexpr char ViewTransform::Width_t::signature[];

auto ViewTransform::Width() const -> float
{
    return mozilla::jni::Field<Width_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::Width(float a0) const -> void
{
    return mozilla::jni::Field<Width_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

constexpr char ViewTransform::X_t::name[];
constexpr char ViewTransform::X_t::signature[];

auto ViewTransform::X() const -> float
{
    return mozilla::jni::Field<X_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::X(float a0) const -> void
{
    return mozilla::jni::Field<X_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

constexpr char ViewTransform::Y_t::name[];
constexpr char ViewTransform::Y_t::signature[];

auto ViewTransform::Y() const -> float
{
    return mozilla::jni::Field<Y_t>::Get(ViewTransform::mCtx, nullptr);
}

auto ViewTransform::Y(float a0) const -> void
{
    return mozilla::jni::Field<Y_t>::Set(ViewTransform::mCtx, nullptr, a0);
}

const char Clipboard::name[] =
        "org/mozilla/gecko/util/Clipboard";

constexpr char Clipboard::ClearText_t::name[];
constexpr char Clipboard::ClearText_t::signature[];

auto Clipboard::ClearText() -> void
{
    return mozilla::jni::Method<ClearText_t>::Call(Clipboard::Context(), nullptr);
}

constexpr char Clipboard::GetText_t::name[];
constexpr char Clipboard::GetText_t::signature[];

auto Clipboard::GetText() -> mozilla::jni::String::LocalRef
{
    return mozilla::jni::Method<GetText_t>::Call(Clipboard::Context(), nullptr);
}

constexpr char Clipboard::HasText_t::name[];
constexpr char Clipboard::HasText_t::signature[];

auto Clipboard::HasText() -> bool
{
    return mozilla::jni::Method<HasText_t>::Call(Clipboard::Context(), nullptr);
}

constexpr char Clipboard::SetText_t::name[];
constexpr char Clipboard::SetText_t::signature[];

auto Clipboard::SetText(mozilla::jni::String::Param a0) -> void
{
    return mozilla::jni::Method<SetText_t>::Call(Clipboard::Context(), nullptr, a0);
}

const char HardwareCodecCapabilityUtils::name[] =
        "org/mozilla/gecko/util/HardwareCodecCapabilityUtils";

constexpr char HardwareCodecCapabilityUtils::FindDecoderCodecInfoForMimeType_t::name[];
constexpr char HardwareCodecCapabilityUtils::FindDecoderCodecInfoForMimeType_t::signature[];

auto HardwareCodecCapabilityUtils::FindDecoderCodecInfoForMimeType(mozilla::jni::String::Param a0) -> bool
{
    return mozilla::jni::Method<FindDecoderCodecInfoForMimeType_t>::Call(HardwareCodecCapabilityUtils::Context(), nullptr, a0);
}

const char NativeJSContainer::name[] =
        "org/mozilla/gecko/util/NativeJSContainer";

constexpr char NativeJSContainer::New_t::name[];
constexpr char NativeJSContainer::New_t::signature[];

auto NativeJSContainer::New() -> NativeJSContainer::LocalRef
{
    return mozilla::jni::Constructor<New_t>::Call(NativeJSContainer::Context(), nullptr);
}

constexpr char NativeJSContainer::Clone2_t::name[];
constexpr char NativeJSContainer::Clone2_t::signature[];

constexpr char NativeJSContainer::DisposeNative_t::name[];
constexpr char NativeJSContainer::DisposeNative_t::signature[];

const char NativeJSObject::name[] =
        "org/mozilla/gecko/util/NativeJSObject";

constexpr char NativeJSObject::New_t::name[];
constexpr char NativeJSObject::New_t::signature[];

auto NativeJSObject::New() -> NativeJSObject::LocalRef
{
    return mozilla::jni::Constructor<New_t>::Call(NativeJSObject::Context(), nullptr);
}

constexpr char NativeJSObject::DisposeNative_t::name[];
constexpr char NativeJSObject::DisposeNative_t::signature[];

auto NativeJSObject::DisposeNative() const -> void
{
    return mozilla::jni::Method<DisposeNative_t>::Call(NativeJSObject::mCtx, nullptr);
}

constexpr char NativeJSObject::GetBoolean_t::name[];
constexpr char NativeJSObject::GetBoolean_t::signature[];

constexpr char NativeJSObject::GetBooleanArray_t::name[];
constexpr char NativeJSObject::GetBooleanArray_t::signature[];

constexpr char NativeJSObject::GetBundle_t::name[];
constexpr char NativeJSObject::GetBundle_t::signature[];

constexpr char NativeJSObject::GetBundleArray_t::name[];
constexpr char NativeJSObject::GetBundleArray_t::signature[];

constexpr char NativeJSObject::GetDouble_t::name[];
constexpr char NativeJSObject::GetDouble_t::signature[];

constexpr char NativeJSObject::GetDoubleArray_t::name[];
constexpr char NativeJSObject::GetDoubleArray_t::signature[];

constexpr char NativeJSObject::GetInt_t::name[];
constexpr char NativeJSObject::GetInt_t::signature[];

constexpr char NativeJSObject::GetIntArray_t::name[];
constexpr char NativeJSObject::GetIntArray_t::signature[];

constexpr char NativeJSObject::GetObject_t::name[];
constexpr char NativeJSObject::GetObject_t::signature[];

constexpr char NativeJSObject::GetObjectArray_t::name[];
constexpr char NativeJSObject::GetObjectArray_t::signature[];

constexpr char NativeJSObject::GetString_t::name[];
constexpr char NativeJSObject::GetString_t::signature[];

constexpr char NativeJSObject::GetStringArray_t::name[];
constexpr char NativeJSObject::GetStringArray_t::signature[];

constexpr char NativeJSObject::Has_t::name[];
constexpr char NativeJSObject::Has_t::signature[];

constexpr char NativeJSObject::OptBoolean_t::name[];
constexpr char NativeJSObject::OptBoolean_t::signature[];

constexpr char NativeJSObject::OptBooleanArray_t::name[];
constexpr char NativeJSObject::OptBooleanArray_t::signature[];

constexpr char NativeJSObject::OptBundle_t::name[];
constexpr char NativeJSObject::OptBundle_t::signature[];

constexpr char NativeJSObject::OptBundleArray_t::name[];
constexpr char NativeJSObject::OptBundleArray_t::signature[];

constexpr char NativeJSObject::OptDouble_t::name[];
constexpr char NativeJSObject::OptDouble_t::signature[];

constexpr char NativeJSObject::OptDoubleArray_t::name[];
constexpr char NativeJSObject::OptDoubleArray_t::signature[];

constexpr char NativeJSObject::OptInt_t::name[];
constexpr char NativeJSObject::OptInt_t::signature[];

constexpr char NativeJSObject::OptIntArray_t::name[];
constexpr char NativeJSObject::OptIntArray_t::signature[];

constexpr char NativeJSObject::OptObject_t::name[];
constexpr char NativeJSObject::OptObject_t::signature[];

constexpr char NativeJSObject::OptObjectArray_t::name[];
constexpr char NativeJSObject::OptObjectArray_t::signature[];

constexpr char NativeJSObject::OptString_t::name[];
constexpr char NativeJSObject::OptString_t::signature[];

constexpr char NativeJSObject::OptStringArray_t::name[];
constexpr char NativeJSObject::OptStringArray_t::signature[];

constexpr char NativeJSObject::ToBundle_t::name[];
constexpr char NativeJSObject::ToBundle_t::signature[];

constexpr char NativeJSObject::ToString_t::name[];
constexpr char NativeJSObject::ToString_t::signature[];

} /* java */
} /* mozilla */
