-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
Copy pathNativeAppStateSpec.g.h
69 lines (57 loc) · 2.79 KB
/
NativeAppStateSpec.g.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*
* This file is auto-generated from a NativeModule spec file in js.
*
* This is a C++ Spec class that should be used with MakeTurboModuleProvider to register native modules
* in a way that also verifies at compile time that the native module matches the interface required
* by the TurboModule JS spec.
*/
#pragma once
// clang-format off
#include <NativeModules.h>
#include <tuple>
namespace Microsoft::ReactNativeSpecs {
struct AppStateSpec_AppStateConstants {
std::string initialAppState;
};
struct AppStateSpec_AppState {
std::string app_state;
};
inline winrt::Microsoft::ReactNative::FieldMap GetStructInfo(AppStateSpec_AppStateConstants*) noexcept {
winrt::Microsoft::ReactNative::FieldMap fieldMap {
{L"initialAppState", &AppStateSpec_AppStateConstants::initialAppState},
};
return fieldMap;
}
inline winrt::Microsoft::ReactNative::FieldMap GetStructInfo(AppStateSpec_AppState*) noexcept {
winrt::Microsoft::ReactNative::FieldMap fieldMap {
{L"app_state", &AppStateSpec_AppState::app_state},
};
return fieldMap;
}
struct AppStateSpec : winrt::Microsoft::ReactNative::TurboModuleSpec {
static constexpr auto methods = std::tuple{
Method<void(Callback<AppStateSpec_AppState>, Callback<::React::JSValue>) noexcept>{0, L"getCurrentAppState"},
Method<void(std::string) noexcept>{1, L"addListener"},
Method<void(double) noexcept>{2, L"removeListeners"},
};
template <class TModule>
static constexpr void ValidateModule() noexcept {
constexpr auto methodCheckResults = CheckMethods<TModule, AppStateSpec>();
REACT_SHOW_METHOD_SPEC_ERRORS(
0,
"getCurrentAppState",
" REACT_METHOD(getCurrentAppState) void getCurrentAppState(std::function<void(AppStateSpec_AppState const &)> const & success, std::function<void(::React::JSValue const &)> const & error) noexcept { /* implementation */ }\n"
" REACT_METHOD(getCurrentAppState) static void getCurrentAppState(std::function<void(AppStateSpec_AppState const &)> const & success, std::function<void(::React::JSValue const &)> const & error) noexcept { /* implementation */ }\n");
REACT_SHOW_METHOD_SPEC_ERRORS(
1,
"addListener",
" REACT_METHOD(addListener) void addListener(std::string eventName) noexcept { /* implementation */ }\n"
" REACT_METHOD(addListener) static void addListener(std::string eventName) noexcept { /* implementation */ }\n");
REACT_SHOW_METHOD_SPEC_ERRORS(
2,
"removeListeners",
" REACT_METHOD(removeListeners) void removeListeners(double count) noexcept { /* implementation */ }\n"
" REACT_METHOD(removeListeners) static void removeListeners(double count) noexcept { /* implementation */ }\n");
}
};
} // namespace Microsoft::ReactNativeSpecs