@inoxialabs/react-native-nitro-location-geocoder 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/README.md +20 -20
  2. package/android/src/main/java/com/margelo/nitro/locationgeocoder/HybridLocationGeocoder.kt +71 -71
  3. package/ios/HybridLocationGeocoder.swift +78 -78
  4. package/nitrogen/generated/.gitattributes +1 -1
  5. package/nitrogen/generated/android/NitroLocationGeocoder+autolinking.cmake +81 -81
  6. package/nitrogen/generated/android/NitroLocationGeocoder+autolinking.gradle +27 -27
  7. package/nitrogen/generated/android/NitroLocationGeocoderOnLoad.cpp +54 -54
  8. package/nitrogen/generated/android/NitroLocationGeocoderOnLoad.hpp +34 -34
  9. package/nitrogen/generated/android/c++/JHybridLocationGeocoderSpec.cpp +69 -69
  10. package/nitrogen/generated/android/c++/JHybridLocationGeocoderSpec.hpp +63 -63
  11. package/nitrogen/generated/android/c++/JLocationGeocoderResult.hpp +77 -77
  12. package/nitrogen/generated/android/kotlin/com/margelo/nitro/locationgeocoder/HybridLocationGeocoderSpec.kt +55 -55
  13. package/nitrogen/generated/android/kotlin/com/margelo/nitro/locationgeocoder/LocationGeocoderResult.kt +76 -53
  14. package/nitrogen/generated/android/kotlin/com/margelo/nitro/locationgeocoder/NitroLocationGeocoderOnLoad.kt +35 -35
  15. package/nitrogen/generated/ios/NitroLocationGeocoder+autolinking.rb +62 -60
  16. package/nitrogen/generated/ios/NitroLocationGeocoder-Swift-Cxx-Bridge.cpp +49 -49
  17. package/nitrogen/generated/ios/NitroLocationGeocoder-Swift-Cxx-Bridge.hpp +114 -114
  18. package/nitrogen/generated/ios/NitroLocationGeocoder-Swift-Cxx-Umbrella.hpp +48 -48
  19. package/nitrogen/generated/ios/NitroLocationGeocoderAutolinking.mm +33 -33
  20. package/nitrogen/generated/ios/NitroLocationGeocoderAutolinking.swift +26 -26
  21. package/nitrogen/generated/ios/c++/HybridLocationGeocoderSpecSwift.cpp +11 -11
  22. package/nitrogen/generated/ios/c++/HybridLocationGeocoderSpecSwift.hpp +85 -85
  23. package/nitrogen/generated/ios/swift/Func_void_LocationGeocoderResult.swift +46 -46
  24. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -46
  25. package/nitrogen/generated/ios/swift/HybridLocationGeocoderSpec.swift +55 -55
  26. package/nitrogen/generated/ios/swift/HybridLocationGeocoderSpec_cxx.swift +145 -145
  27. package/nitrogen/generated/ios/swift/LocationGeocoderResult.swift +54 -54
  28. package/nitrogen/generated/shared/c++/HybridLocationGeocoderSpec.cpp +21 -21
  29. package/nitrogen/generated/shared/c++/HybridLocationGeocoderSpec.hpp +65 -65
  30. package/nitrogen/generated/shared/c++/LocationGeocoderResult.hpp +103 -103
  31. package/package.json +3 -3
  32. package/src/index.ts +47 -47
@@ -1,54 +1,54 @@
1
- ///
2
- /// NitroLocationGeocoderOnLoad.cpp
3
- /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
- /// https://github.com/mrousavy/nitro
5
- /// Copyright © Marc Rousavy @ Margelo
6
- ///
7
-
8
- #ifndef BUILDING_NITROLOCATIONGEOCODER_WITH_GENERATED_CMAKE_PROJECT
9
- #error NitroLocationGeocoderOnLoad.cpp is not being built with the autogenerated CMakeLists.txt project. Is a different CMakeLists.txt building this?
10
- #endif
11
-
12
- #include "NitroLocationGeocoderOnLoad.hpp"
13
-
14
- #include <jni.h>
15
- #include <fbjni/fbjni.h>
16
- #include <NitroModules/HybridObjectRegistry.hpp>
17
-
18
- #include "JHybridLocationGeocoderSpec.hpp"
19
- #include <NitroModules/DefaultConstructableObject.hpp>
20
-
21
- namespace margelo::nitro::locationgeocoder {
22
-
23
- int initialize(JavaVM* vm) {
24
- return facebook::jni::initialize(vm, []() {
25
- ::margelo::nitro::locationgeocoder::registerAllNatives();
26
- });
27
- }
28
-
29
- struct JHybridLocationGeocoderSpecImpl: public jni::JavaClass<JHybridLocationGeocoderSpecImpl, JHybridLocationGeocoderSpec::JavaPart> {
30
- static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/locationgeocoder/HybridLocationGeocoder;";
31
- static std::shared_ptr<JHybridLocationGeocoderSpec> create() {
32
- static auto constructorFn = javaClassStatic()->getConstructor<JHybridLocationGeocoderSpecImpl::javaobject()>();
33
- jni::local_ref<JHybridLocationGeocoderSpec::JavaPart> javaPart = javaClassStatic()->newObject(constructorFn);
34
- return javaPart->getJHybridLocationGeocoderSpec();
35
- }
36
- };
37
-
38
- void registerAllNatives() {
39
- using namespace margelo::nitro;
40
- using namespace margelo::nitro::locationgeocoder;
41
-
42
- // Register native JNI methods
43
- margelo::nitro::locationgeocoder::JHybridLocationGeocoderSpec::CxxPart::registerNatives();
44
-
45
- // Register Nitro Hybrid Objects
46
- HybridObjectRegistry::registerHybridObjectConstructor(
47
- "LocationGeocoder",
48
- []() -> std::shared_ptr<HybridObject> {
49
- return JHybridLocationGeocoderSpecImpl::create();
50
- }
51
- );
52
- }
53
-
54
- } // namespace margelo::nitro::locationgeocoder
1
+ ///
2
+ /// NitroLocationGeocoderOnLoad.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #ifndef BUILDING_NITROLOCATIONGEOCODER_WITH_GENERATED_CMAKE_PROJECT
9
+ #error NitroLocationGeocoderOnLoad.cpp is not being built with the autogenerated CMakeLists.txt project. Is a different CMakeLists.txt building this?
10
+ #endif
11
+
12
+ #include "NitroLocationGeocoderOnLoad.hpp"
13
+
14
+ #include <jni.h>
15
+ #include <fbjni/fbjni.h>
16
+ #include <NitroModules/HybridObjectRegistry.hpp>
17
+
18
+ #include "JHybridLocationGeocoderSpec.hpp"
19
+ #include <NitroModules/DefaultConstructableObject.hpp>
20
+
21
+ namespace margelo::nitro::locationgeocoder {
22
+
23
+ int initialize(JavaVM* vm) {
24
+ return facebook::jni::initialize(vm, []() {
25
+ ::margelo::nitro::locationgeocoder::registerAllNatives();
26
+ });
27
+ }
28
+
29
+ struct JHybridLocationGeocoderSpecImpl: public jni::JavaClass<JHybridLocationGeocoderSpecImpl, JHybridLocationGeocoderSpec::JavaPart> {
30
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/locationgeocoder/HybridLocationGeocoder;";
31
+ static std::shared_ptr<JHybridLocationGeocoderSpec> create() {
32
+ static const auto constructorFn = javaClassStatic()->getConstructor<JHybridLocationGeocoderSpecImpl::javaobject()>();
33
+ jni::local_ref<JHybridLocationGeocoderSpec::JavaPart> javaPart = javaClassStatic()->newObject(constructorFn);
34
+ return javaPart->getJHybridLocationGeocoderSpec();
35
+ }
36
+ };
37
+
38
+ void registerAllNatives() {
39
+ using namespace margelo::nitro;
40
+ using namespace margelo::nitro::locationgeocoder;
41
+
42
+ // Register native JNI methods
43
+ margelo::nitro::locationgeocoder::JHybridLocationGeocoderSpec::CxxPart::registerNatives();
44
+
45
+ // Register Nitro Hybrid Objects
46
+ HybridObjectRegistry::registerHybridObjectConstructor(
47
+ "LocationGeocoder",
48
+ []() -> std::shared_ptr<HybridObject> {
49
+ return JHybridLocationGeocoderSpecImpl::create();
50
+ }
51
+ );
52
+ }
53
+
54
+ } // namespace margelo::nitro::locationgeocoder
@@ -1,34 +1,34 @@
1
- ///
2
- /// NitroLocationGeocoderOnLoad.hpp
3
- /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
- /// https://github.com/mrousavy/nitro
5
- /// Copyright © Marc Rousavy @ Margelo
6
- ///
7
-
8
- #include <jni.h>
9
- #include <functional>
10
- #include <NitroModules/NitroDefines.hpp>
11
-
12
- namespace margelo::nitro::locationgeocoder {
13
-
14
- [[deprecated("Use registerNatives() instead.")]]
15
- int initialize(JavaVM* vm);
16
-
17
- /**
18
- * Register the native (C++) part of NitroLocationGeocoder, and autolinks all Hybrid Objects.
19
- * Call this in your `JNI_OnLoad` function (probably inside `cpp-adapter.cpp`),
20
- * inside a `facebook::jni::initialize(vm, ...)` call.
21
- * Example:
22
- * ```cpp (cpp-adapter.cpp)
23
- * JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void*) {
24
- * return facebook::jni::initialize(vm, []() {
25
- * // register all NitroLocationGeocoder HybridObjects
26
- * margelo::nitro::locationgeocoder::registerNatives();
27
- * // any other custom registrations go here.
28
- * });
29
- * }
30
- * ```
31
- */
32
- void registerAllNatives();
33
-
34
- } // namespace margelo::nitro::locationgeocoder
1
+ ///
2
+ /// NitroLocationGeocoderOnLoad.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include <jni.h>
9
+ #include <functional>
10
+ #include <NitroModules/NitroDefines.hpp>
11
+
12
+ namespace margelo::nitro::locationgeocoder {
13
+
14
+ [[deprecated("Use registerNatives() instead.")]]
15
+ int initialize(JavaVM* vm);
16
+
17
+ /**
18
+ * Register the native (C++) part of NitroLocationGeocoder, and autolinks all Hybrid Objects.
19
+ * Call this in your `JNI_OnLoad` function (probably inside `cpp-adapter.cpp`),
20
+ * inside a `facebook::jni::initialize(vm, ...)` call.
21
+ * Example:
22
+ * ```cpp (cpp-adapter.cpp)
23
+ * JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void*) {
24
+ * return facebook::jni::initialize(vm, []() {
25
+ * // register all NitroLocationGeocoder HybridObjects
26
+ * margelo::nitro::locationgeocoder::registerNatives();
27
+ * // any other custom registrations go here.
28
+ * });
29
+ * }
30
+ * ```
31
+ */
32
+ void registerAllNatives();
33
+
34
+ } // namespace margelo::nitro::locationgeocoder
@@ -1,69 +1,69 @@
1
- ///
2
- /// JHybridLocationGeocoderSpec.cpp
3
- /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
- /// https://github.com/mrousavy/nitro
5
- /// Copyright © Marc Rousavy @ Margelo
6
- ///
7
-
8
- #include "JHybridLocationGeocoderSpec.hpp"
9
-
10
- // Forward declaration of `LocationGeocoderResult` to properly resolve imports.
11
- namespace margelo::nitro::locationgeocoder { struct LocationGeocoderResult; }
12
-
13
- #include "LocationGeocoderResult.hpp"
14
- #include <NitroModules/Promise.hpp>
15
- #include <NitroModules/JPromise.hpp>
16
- #include "JLocationGeocoderResult.hpp"
17
- #include <string>
18
-
19
- namespace margelo::nitro::locationgeocoder {
20
-
21
- std::shared_ptr<JHybridLocationGeocoderSpec> JHybridLocationGeocoderSpec::JavaPart::getJHybridLocationGeocoderSpec() {
22
- auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
23
- auto castHybridObject = std::dynamic_pointer_cast<JHybridLocationGeocoderSpec>(hybridObject);
24
- if (castHybridObject == nullptr) [[unlikely]] {
25
- throw std::runtime_error("Failed to downcast JHybridObject to JHybridLocationGeocoderSpec!");
26
- }
27
- return castHybridObject;
28
- }
29
-
30
- jni::local_ref<JHybridLocationGeocoderSpec::CxxPart::jhybriddata> JHybridLocationGeocoderSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
31
- return makeCxxInstance(jThis);
32
- }
33
-
34
- std::shared_ptr<JHybridObject> JHybridLocationGeocoderSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
35
- auto castJavaPart = jni::dynamic_ref_cast<JHybridLocationGeocoderSpec::JavaPart>(javaPart);
36
- if (castJavaPart == nullptr) [[unlikely]] {
37
- throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridLocationGeocoderSpec::JavaPart!");
38
- }
39
- return std::make_shared<JHybridLocationGeocoderSpec>(castJavaPart);
40
- }
41
-
42
- void JHybridLocationGeocoderSpec::CxxPart::registerNatives() {
43
- registerHybrid({
44
- makeNativeMethod("initHybrid", JHybridLocationGeocoderSpec::CxxPart::initHybrid),
45
- });
46
- }
47
-
48
- // Properties
49
-
50
-
51
- // Methods
52
- std::shared_ptr<Promise<LocationGeocoderResult>> JHybridLocationGeocoderSpec::reverseGeocode(double latitude, double longitude, const std::string& locale) {
53
- static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(double /* latitude */, double /* longitude */, jni::alias_ref<jni::JString> /* locale */)>("reverseGeocode");
54
- auto __result = method(_javaPart, latitude, longitude, jni::make_jstring(locale));
55
- return [&]() {
56
- auto __promise = Promise<LocationGeocoderResult>::create();
57
- __result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& __boxedResult) {
58
- auto __result = jni::static_ref_cast<JLocationGeocoderResult>(__boxedResult);
59
- __promise->resolve(__result->toCpp());
60
- });
61
- __result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
62
- jni::JniException __jniError(__throwable);
63
- __promise->reject(std::make_exception_ptr(__jniError));
64
- });
65
- return __promise;
66
- }();
67
- }
68
-
69
- } // namespace margelo::nitro::locationgeocoder
1
+ ///
2
+ /// JHybridLocationGeocoderSpec.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "JHybridLocationGeocoderSpec.hpp"
9
+
10
+ // Forward declaration of `LocationGeocoderResult` to properly resolve imports.
11
+ namespace margelo::nitro::locationgeocoder { struct LocationGeocoderResult; }
12
+
13
+ #include "LocationGeocoderResult.hpp"
14
+ #include <NitroModules/Promise.hpp>
15
+ #include <NitroModules/JPromise.hpp>
16
+ #include "JLocationGeocoderResult.hpp"
17
+ #include <string>
18
+
19
+ namespace margelo::nitro::locationgeocoder {
20
+
21
+ std::shared_ptr<JHybridLocationGeocoderSpec> JHybridLocationGeocoderSpec::JavaPart::getJHybridLocationGeocoderSpec() {
22
+ auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
23
+ auto castHybridObject = std::dynamic_pointer_cast<JHybridLocationGeocoderSpec>(hybridObject);
24
+ if (castHybridObject == nullptr) [[unlikely]] {
25
+ throw std::runtime_error("Failed to downcast JHybridObject to JHybridLocationGeocoderSpec!");
26
+ }
27
+ return castHybridObject;
28
+ }
29
+
30
+ jni::local_ref<JHybridLocationGeocoderSpec::CxxPart::jhybriddata> JHybridLocationGeocoderSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
31
+ return makeCxxInstance(jThis);
32
+ }
33
+
34
+ std::shared_ptr<JHybridObject> JHybridLocationGeocoderSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
35
+ auto castJavaPart = jni::dynamic_ref_cast<JHybridLocationGeocoderSpec::JavaPart>(javaPart);
36
+ if (castJavaPart == nullptr) [[unlikely]] {
37
+ throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridLocationGeocoderSpec::JavaPart!");
38
+ }
39
+ return std::make_shared<JHybridLocationGeocoderSpec>(castJavaPart);
40
+ }
41
+
42
+ void JHybridLocationGeocoderSpec::CxxPart::registerNatives() {
43
+ registerHybrid({
44
+ makeNativeMethod("initHybrid", JHybridLocationGeocoderSpec::CxxPart::initHybrid),
45
+ });
46
+ }
47
+
48
+ // Properties
49
+
50
+
51
+ // Methods
52
+ std::shared_ptr<Promise<LocationGeocoderResult>> JHybridLocationGeocoderSpec::reverseGeocode(double latitude, double longitude, const std::string& locale) {
53
+ static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(double /* latitude */, double /* longitude */, jni::alias_ref<jni::JString> /* locale */)>("reverseGeocode");
54
+ auto __result = method(_javaPart, latitude, longitude, jni::make_jstring(locale));
55
+ return [&]() {
56
+ auto __promise = Promise<LocationGeocoderResult>::create();
57
+ __result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& __boxedResult) {
58
+ auto __result = jni::static_ref_cast<JLocationGeocoderResult>(__boxedResult);
59
+ __promise->resolve(__result->toCpp());
60
+ });
61
+ __result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
62
+ jni::JniException __jniError(__throwable);
63
+ __promise->reject(std::make_exception_ptr(__jniError));
64
+ });
65
+ return __promise;
66
+ }();
67
+ }
68
+
69
+ } // namespace margelo::nitro::locationgeocoder
@@ -1,63 +1,63 @@
1
- ///
2
- /// HybridLocationGeocoderSpec.hpp
3
- /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
- /// https://github.com/mrousavy/nitro
5
- /// Copyright © Marc Rousavy @ Margelo
6
- ///
7
-
8
- #pragma once
9
-
10
- #include <NitroModules/JHybridObject.hpp>
11
- #include <fbjni/fbjni.h>
12
- #include "HybridLocationGeocoderSpec.hpp"
13
-
14
-
15
-
16
-
17
- namespace margelo::nitro::locationgeocoder {
18
-
19
- using namespace facebook;
20
-
21
- class JHybridLocationGeocoderSpec: public virtual HybridLocationGeocoderSpec, public virtual JHybridObject {
22
- public:
23
- struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
24
- static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/locationgeocoder/HybridLocationGeocoderSpec;";
25
- std::shared_ptr<JHybridLocationGeocoderSpec> getJHybridLocationGeocoderSpec();
26
- };
27
- struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
28
- static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/locationgeocoder/HybridLocationGeocoderSpec$CxxPart;";
29
- static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
30
- static void registerNatives();
31
- using HybridBase::HybridBase;
32
- protected:
33
- std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
34
- };
35
-
36
- public:
37
- explicit JHybridLocationGeocoderSpec(const jni::local_ref<JHybridLocationGeocoderSpec::JavaPart>& javaPart):
38
- HybridObject(HybridLocationGeocoderSpec::TAG),
39
- JHybridObject(javaPart),
40
- _javaPart(jni::make_global(javaPart)) {}
41
- ~JHybridLocationGeocoderSpec() override {
42
- // Hermes GC can destroy JS objects on a non-JNI Thread.
43
- jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
44
- }
45
-
46
- public:
47
- inline const jni::global_ref<JHybridLocationGeocoderSpec::JavaPart>& getJavaPart() const noexcept {
48
- return _javaPart;
49
- }
50
-
51
- public:
52
- // Properties
53
-
54
-
55
- public:
56
- // Methods
57
- std::shared_ptr<Promise<LocationGeocoderResult>> reverseGeocode(double latitude, double longitude, const std::string& locale) override;
58
-
59
- private:
60
- jni::global_ref<JHybridLocationGeocoderSpec::JavaPart> _javaPart;
61
- };
62
-
63
- } // namespace margelo::nitro::locationgeocoder
1
+ ///
2
+ /// HybridLocationGeocoderSpec.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <NitroModules/JHybridObject.hpp>
11
+ #include <fbjni/fbjni.h>
12
+ #include "HybridLocationGeocoderSpec.hpp"
13
+
14
+
15
+
16
+
17
+ namespace margelo::nitro::locationgeocoder {
18
+
19
+ using namespace facebook;
20
+
21
+ class JHybridLocationGeocoderSpec: public virtual HybridLocationGeocoderSpec, public virtual JHybridObject {
22
+ public:
23
+ struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
24
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/locationgeocoder/HybridLocationGeocoderSpec;";
25
+ std::shared_ptr<JHybridLocationGeocoderSpec> getJHybridLocationGeocoderSpec();
26
+ };
27
+ struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
28
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/locationgeocoder/HybridLocationGeocoderSpec$CxxPart;";
29
+ static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
30
+ static void registerNatives();
31
+ using HybridBase::HybridBase;
32
+ protected:
33
+ std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
34
+ };
35
+
36
+ public:
37
+ explicit JHybridLocationGeocoderSpec(const jni::local_ref<JHybridLocationGeocoderSpec::JavaPart>& javaPart):
38
+ HybridObject(HybridLocationGeocoderSpec::TAG),
39
+ JHybridObject(javaPart),
40
+ _javaPart(jni::make_global(javaPart)) {}
41
+ ~JHybridLocationGeocoderSpec() override {
42
+ // Hermes GC can destroy JS objects on a non-JNI Thread.
43
+ jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
44
+ }
45
+
46
+ public:
47
+ inline const jni::global_ref<JHybridLocationGeocoderSpec::JavaPart>& getJavaPart() const noexcept {
48
+ return _javaPart;
49
+ }
50
+
51
+ public:
52
+ // Properties
53
+
54
+
55
+ public:
56
+ // Methods
57
+ std::shared_ptr<Promise<LocationGeocoderResult>> reverseGeocode(double latitude, double longitude, const std::string& locale) override;
58
+
59
+ private:
60
+ jni::global_ref<JHybridLocationGeocoderSpec::JavaPart> _javaPart;
61
+ };
62
+
63
+ } // namespace margelo::nitro::locationgeocoder
@@ -1,77 +1,77 @@
1
- ///
2
- /// JLocationGeocoderResult.hpp
3
- /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
- /// https://github.com/mrousavy/nitro
5
- /// Copyright © Marc Rousavy @ Margelo
6
- ///
7
-
8
- #pragma once
9
-
10
- #include <fbjni/fbjni.h>
11
- #include "LocationGeocoderResult.hpp"
12
-
13
- #include <string>
14
-
15
- namespace margelo::nitro::locationgeocoder {
16
-
17
- using namespace facebook;
18
-
19
- /**
20
- * The C++ JNI bridge between the C++ struct "LocationGeocoderResult" and the the Kotlin data class "LocationGeocoderResult".
21
- */
22
- struct JLocationGeocoderResult final: public jni::JavaClass<JLocationGeocoderResult> {
23
- public:
24
- static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/locationgeocoder/LocationGeocoderResult;";
25
-
26
- public:
27
- /**
28
- * Convert this Java/Kotlin-based struct to the C++ struct LocationGeocoderResult by copying all values to C++.
29
- */
30
- [[maybe_unused]]
31
- [[nodiscard]]
32
- LocationGeocoderResult toCpp() const {
33
- static const auto clazz = javaClassStatic();
34
- static const auto fieldCountryCode = clazz->getField<jni::JString>("countryCode");
35
- jni::local_ref<jni::JString> countryCode = this->getFieldValue(fieldCountryCode);
36
- static const auto fieldCountry = clazz->getField<jni::JString>("country");
37
- jni::local_ref<jni::JString> country = this->getFieldValue(fieldCountry);
38
- static const auto fieldLocality = clazz->getField<jni::JString>("locality");
39
- jni::local_ref<jni::JString> locality = this->getFieldValue(fieldLocality);
40
- static const auto fieldAdministrativeArea = clazz->getField<jni::JString>("administrativeArea");
41
- jni::local_ref<jni::JString> administrativeArea = this->getFieldValue(fieldAdministrativeArea);
42
- static const auto fieldSubAdministrativeArea = clazz->getField<jni::JString>("subAdministrativeArea");
43
- jni::local_ref<jni::JString> subAdministrativeArea = this->getFieldValue(fieldSubAdministrativeArea);
44
- static const auto fieldSubLocality = clazz->getField<jni::JString>("subLocality");
45
- jni::local_ref<jni::JString> subLocality = this->getFieldValue(fieldSubLocality);
46
- return LocationGeocoderResult(
47
- countryCode->toStdString(),
48
- country->toStdString(),
49
- locality->toStdString(),
50
- administrativeArea->toStdString(),
51
- subAdministrativeArea->toStdString(),
52
- subLocality->toStdString()
53
- );
54
- }
55
-
56
- public:
57
- /**
58
- * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
59
- */
60
- [[maybe_unused]]
61
- static jni::local_ref<JLocationGeocoderResult::javaobject> fromCpp(const LocationGeocoderResult& value) {
62
- using JSignature = JLocationGeocoderResult(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>);
63
- static const auto clazz = javaClassStatic();
64
- static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
65
- return create(
66
- clazz,
67
- jni::make_jstring(value.countryCode),
68
- jni::make_jstring(value.country),
69
- jni::make_jstring(value.locality),
70
- jni::make_jstring(value.administrativeArea),
71
- jni::make_jstring(value.subAdministrativeArea),
72
- jni::make_jstring(value.subLocality)
73
- );
74
- }
75
- };
76
-
77
- } // namespace margelo::nitro::locationgeocoder
1
+ ///
2
+ /// JLocationGeocoderResult.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "LocationGeocoderResult.hpp"
12
+
13
+ #include <string>
14
+
15
+ namespace margelo::nitro::locationgeocoder {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "LocationGeocoderResult" and the Kotlin data class "LocationGeocoderResult".
21
+ */
22
+ struct JLocationGeocoderResult final: public jni::JavaClass<JLocationGeocoderResult> {
23
+ public:
24
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/locationgeocoder/LocationGeocoderResult;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct LocationGeocoderResult by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ LocationGeocoderResult toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldCountryCode = clazz->getField<jni::JString>("countryCode");
35
+ jni::local_ref<jni::JString> countryCode = this->getFieldValue(fieldCountryCode);
36
+ static const auto fieldCountry = clazz->getField<jni::JString>("country");
37
+ jni::local_ref<jni::JString> country = this->getFieldValue(fieldCountry);
38
+ static const auto fieldLocality = clazz->getField<jni::JString>("locality");
39
+ jni::local_ref<jni::JString> locality = this->getFieldValue(fieldLocality);
40
+ static const auto fieldAdministrativeArea = clazz->getField<jni::JString>("administrativeArea");
41
+ jni::local_ref<jni::JString> administrativeArea = this->getFieldValue(fieldAdministrativeArea);
42
+ static const auto fieldSubAdministrativeArea = clazz->getField<jni::JString>("subAdministrativeArea");
43
+ jni::local_ref<jni::JString> subAdministrativeArea = this->getFieldValue(fieldSubAdministrativeArea);
44
+ static const auto fieldSubLocality = clazz->getField<jni::JString>("subLocality");
45
+ jni::local_ref<jni::JString> subLocality = this->getFieldValue(fieldSubLocality);
46
+ return LocationGeocoderResult(
47
+ countryCode->toStdString(),
48
+ country->toStdString(),
49
+ locality->toStdString(),
50
+ administrativeArea->toStdString(),
51
+ subAdministrativeArea->toStdString(),
52
+ subLocality->toStdString()
53
+ );
54
+ }
55
+
56
+ public:
57
+ /**
58
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
59
+ */
60
+ [[maybe_unused]]
61
+ static jni::local_ref<JLocationGeocoderResult::javaobject> fromCpp(const LocationGeocoderResult& value) {
62
+ using JSignature = JLocationGeocoderResult(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>);
63
+ static const auto clazz = javaClassStatic();
64
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
65
+ return create(
66
+ clazz,
67
+ jni::make_jstring(value.countryCode),
68
+ jni::make_jstring(value.country),
69
+ jni::make_jstring(value.locality),
70
+ jni::make_jstring(value.administrativeArea),
71
+ jni::make_jstring(value.subAdministrativeArea),
72
+ jni::make_jstring(value.subLocality)
73
+ );
74
+ }
75
+ };
76
+
77
+ } // namespace margelo::nitro::locationgeocoder