react-native-ble-nitro 1.9.3 → 1.10.0

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 (113) hide show
  1. package/README.md +23 -0
  2. package/android/src/main/java/com/margelo/nitro/co/zyke/ble/BleNitroBleManager.kt +4 -0
  3. package/ios/BleNitroBleManager.swift +38 -3
  4. package/lib/commonjs/manager.d.ts +8 -0
  5. package/lib/commonjs/manager.d.ts.map +1 -1
  6. package/lib/commonjs/manager.js +11 -0
  7. package/lib/commonjs/manager.js.map +1 -1
  8. package/lib/commonjs/specs/NativeBleNitro.nitro.d.ts +1 -0
  9. package/lib/commonjs/specs/NativeBleNitro.nitro.d.ts.map +1 -1
  10. package/lib/manager.d.ts +8 -0
  11. package/lib/manager.js +10 -0
  12. package/lib/specs/NativeBleNitro.nitro.d.ts +1 -0
  13. package/nitrogen/generated/android/BleNitro+autolinking.cmake +3 -1
  14. package/nitrogen/generated/android/BleNitro+autolinking.gradle +1 -1
  15. package/nitrogen/generated/android/BleNitroOnLoad.cpp +3 -3
  16. package/nitrogen/generated/android/BleNitroOnLoad.hpp +1 -1
  17. package/nitrogen/generated/android/c++/JAndroidScanMode.hpp +5 -6
  18. package/nitrogen/generated/android/c++/JBLEDevice.hpp +8 -4
  19. package/nitrogen/generated/android/c++/JBLEState.hpp +7 -8
  20. package/nitrogen/generated/android/c++/JFunc_void_BLEState.hpp +3 -2
  21. package/nitrogen/generated/android/c++/JFunc_void_bool_double_std__string.hpp +3 -2
  22. package/nitrogen/generated/android/c++/JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string.hpp +3 -3
  23. package/nitrogen/generated/android/c++/JFunc_void_bool_std__string.hpp +3 -2
  24. package/nitrogen/generated/android/c++/JFunc_void_bool_std__string_std__string.hpp +3 -2
  25. package/nitrogen/generated/android/c++/JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__.hpp +91 -0
  26. package/nitrogen/generated/android/c++/JFunc_void_std__string_bool_std__string.hpp +3 -2
  27. package/nitrogen/generated/android/c++/JFunc_void_std__string_std__shared_ptr_ArrayBuffer_.hpp +3 -3
  28. package/nitrogen/generated/android/c++/JFunc_void_std__vector_BLEDevice_.hpp +5 -4
  29. package/nitrogen/generated/android/c++/JHybridNativeBleNitroFactorySpec.cpp +15 -4
  30. package/nitrogen/generated/android/c++/JHybridNativeBleNitroFactorySpec.hpp +3 -1
  31. package/nitrogen/generated/android/c++/JHybridNativeBleNitroSpec.cpp +31 -9
  32. package/nitrogen/generated/android/c++/JHybridNativeBleNitroSpec.hpp +5 -2
  33. package/nitrogen/generated/android/c++/JManufacturerData.hpp +8 -4
  34. package/nitrogen/generated/android/c++/JManufacturerDataEntry.hpp +6 -3
  35. package/nitrogen/generated/android/c++/JOperationResult.hpp +6 -2
  36. package/nitrogen/generated/android/c++/JScanFilter.hpp +8 -3
  37. package/nitrogen/generated/android/c++/JVariant_NullType_BLEDevice.cpp +26 -0
  38. package/nitrogen/generated/android/c++/JVariant_NullType_BLEDevice.hpp +79 -0
  39. package/nitrogen/generated/android/c++/JVariant_NullType_String.cpp +26 -0
  40. package/nitrogen/generated/android/c++/JVariant_NullType_String.hpp +70 -0
  41. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/AndroidScanMode.kt +3 -1
  42. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BLEDevice.kt +34 -25
  43. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BLEState.kt +3 -1
  44. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleNitroOnLoad.kt +1 -1
  45. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_BLEState.kt +1 -2
  46. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_double_std__string.kt +1 -2
  47. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_std__shared_ptr_ArrayBuffer__std__string.kt +2 -3
  48. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_std__string.kt +1 -2
  49. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_std__string_std__string.kt +1 -2
  50. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{Func_void_std__optional_BLEDevice__std__optional_std__string_.kt → Func_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__.kt} +11 -12
  51. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__string_bool_std__string.kt +1 -2
  52. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__string_std__shared_ptr_ArrayBuffer_.kt +2 -3
  53. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__vector_BLEDevice_.kt +1 -2
  54. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridNativeBleNitroFactorySpec.kt +8 -3
  55. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridNativeBleNitroSpec.kt +17 -5
  56. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ManufacturerData.kt +16 -7
  57. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ManufacturerDataEntry.kt +20 -11
  58. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/OperationResult.kt +19 -10
  59. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ScanFilter.kt +25 -16
  60. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Variant_NullType_BLEDevice.kt +59 -0
  61. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Variant_NullType_String.kt +59 -0
  62. package/nitrogen/generated/ios/BleNitro+autolinking.rb +2 -2
  63. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Bridge.cpp +6 -5
  64. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Bridge.hpp +99 -27
  65. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Umbrella.hpp +3 -3
  66. package/nitrogen/generated/ios/BleNitroAutolinking.mm +1 -1
  67. package/nitrogen/generated/ios/BleNitroAutolinking.swift +13 -15
  68. package/nitrogen/generated/ios/c++/HybridNativeBleNitroFactorySpecSwift.cpp +1 -1
  69. package/nitrogen/generated/ios/c++/HybridNativeBleNitroFactorySpecSwift.hpp +10 -3
  70. package/nitrogen/generated/ios/c++/HybridNativeBleNitroSpecSwift.cpp +1 -1
  71. package/nitrogen/generated/ios/c++/HybridNativeBleNitroSpecSwift.hpp +19 -4
  72. package/nitrogen/generated/ios/swift/AndroidScanMode.swift +1 -1
  73. package/nitrogen/generated/ios/swift/BLEDevice.swift +15 -63
  74. package/nitrogen/generated/ios/swift/BLEState.swift +1 -1
  75. package/nitrogen/generated/ios/swift/Func_void.swift +1 -2
  76. package/nitrogen/generated/ios/swift/Func_void_BLEState.swift +1 -2
  77. package/nitrogen/generated/ios/swift/Func_void_bool_double_std__string.swift +1 -2
  78. package/nitrogen/generated/ios/swift/Func_void_bool_std__shared_ptr_ArrayBuffer__std__string.swift +1 -2
  79. package/nitrogen/generated/ios/swift/Func_void_bool_std__string.swift +1 -2
  80. package/nitrogen/generated/ios/swift/Func_void_bool_std__string_std__string.swift +1 -2
  81. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -2
  82. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__.swift +84 -0
  83. package/nitrogen/generated/ios/swift/Func_void_std__string_bool_std__string.swift +1 -2
  84. package/nitrogen/generated/ios/swift/Func_void_std__string_std__shared_ptr_ArrayBuffer_.swift +1 -2
  85. package/nitrogen/generated/ios/swift/Func_void_std__vector_BLEDevice_.swift +1 -2
  86. package/nitrogen/generated/ios/swift/HybridNativeBleNitroFactorySpec.swift +10 -4
  87. package/nitrogen/generated/ios/swift/HybridNativeBleNitroFactorySpec_cxx.swift +18 -3
  88. package/nitrogen/generated/ios/swift/HybridNativeBleNitroSpec.swift +12 -5
  89. package/nitrogen/generated/ios/swift/HybridNativeBleNitroSpec_cxx.swift +59 -12
  90. package/nitrogen/generated/ios/swift/ManufacturerData.swift +3 -15
  91. package/nitrogen/generated/ios/swift/ManufacturerDataEntry.swift +5 -17
  92. package/nitrogen/generated/ios/swift/OperationResult.swift +12 -30
  93. package/nitrogen/generated/ios/swift/ScanFilter.swift +9 -39
  94. package/nitrogen/generated/ios/swift/Variant_NullType_BLEDevice.swift +18 -0
  95. package/nitrogen/generated/ios/swift/Variant_NullType_String.swift +18 -0
  96. package/nitrogen/generated/shared/c++/AndroidScanMode.hpp +1 -1
  97. package/nitrogen/generated/shared/c++/BLEDevice.hpp +31 -23
  98. package/nitrogen/generated/shared/c++/BLEState.hpp +1 -1
  99. package/nitrogen/generated/shared/c++/HybridNativeBleNitroFactorySpec.cpp +1 -1
  100. package/nitrogen/generated/shared/c++/HybridNativeBleNitroFactorySpec.hpp +1 -1
  101. package/nitrogen/generated/shared/c++/HybridNativeBleNitroSpec.cpp +2 -1
  102. package/nitrogen/generated/shared/c++/HybridNativeBleNitroSpec.hpp +5 -4
  103. package/nitrogen/generated/shared/c++/ManufacturerData.hpp +13 -5
  104. package/nitrogen/generated/shared/c++/ManufacturerDataEntry.hpp +17 -10
  105. package/nitrogen/generated/shared/c++/OperationResult.hpp +16 -8
  106. package/nitrogen/generated/shared/c++/ScanFilter.hpp +22 -14
  107. package/package.json +10 -10
  108. package/plugin/build/withBleNitro.d.ts +8 -0
  109. package/plugin/build/withBleNitro.js +4 -1
  110. package/src/manager.ts +13 -2
  111. package/src/specs/NativeBleNitro.nitro.ts +1 -0
  112. package/nitrogen/generated/android/c++/JFunc_void_std__optional_BLEDevice__std__optional_std__string_.hpp +0 -86
  113. package/nitrogen/generated/ios/swift/Func_void_std__optional_BLEDevice__std__optional_std__string_.swift +0 -54
@@ -2,7 +2,7 @@
2
2
  /// JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -13,8 +13,8 @@
13
13
  #include <NitroModules/ArrayBuffer.hpp>
14
14
  #include <string>
15
15
  #include <functional>
16
+ #include <NitroModules/JNICallable.hpp>
16
17
  #include <NitroModules/JArrayBuffer.hpp>
17
- #include <NitroModules/JUnit.hpp>
18
18
 
19
19
  namespace margelo::nitro::co::zyke::ble {
20
20
 
@@ -41,7 +41,7 @@ namespace margelo::nitro::co::zyke::ble {
41
41
  /**
42
42
  * An implementation of Func_void_bool_std__shared_ptr_ArrayBuffer__std__string that is backed by a C++ implementation (using `std::function<...>`)
43
43
  */
44
- struct JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string_cxx final: public jni::HybridClass<JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string_cxx, JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string> {
44
+ class JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string_cxx final: public jni::HybridClass<JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string_cxx, JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string> {
45
45
  public:
46
46
  static jni::local_ref<JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string::javaobject> fromCpp(const std::function<void(bool /* success */, const std::shared_ptr<ArrayBuffer>& /* data */, const std::string& /* error */)>& func) {
47
47
  return JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string_cxx::newObjectCxxArgs(func);
@@ -2,7 +2,7 @@
2
2
  /// JFunc_void_bool_std__string.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -12,6 +12,7 @@
12
12
 
13
13
  #include <string>
14
14
  #include <functional>
15
+ #include <NitroModules/JNICallable.hpp>
15
16
 
16
17
  namespace margelo::nitro::co::zyke::ble {
17
18
 
@@ -38,7 +39,7 @@ namespace margelo::nitro::co::zyke::ble {
38
39
  /**
39
40
  * An implementation of Func_void_bool_std__string that is backed by a C++ implementation (using `std::function<...>`)
40
41
  */
41
- struct JFunc_void_bool_std__string_cxx final: public jni::HybridClass<JFunc_void_bool_std__string_cxx, JFunc_void_bool_std__string> {
42
+ class JFunc_void_bool_std__string_cxx final: public jni::HybridClass<JFunc_void_bool_std__string_cxx, JFunc_void_bool_std__string> {
42
43
  public:
43
44
  static jni::local_ref<JFunc_void_bool_std__string::javaobject> fromCpp(const std::function<void(bool /* success */, const std::string& /* error */)>& func) {
44
45
  return JFunc_void_bool_std__string_cxx::newObjectCxxArgs(func);
@@ -2,7 +2,7 @@
2
2
  /// JFunc_void_bool_std__string_std__string.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -12,6 +12,7 @@
12
12
 
13
13
  #include <string>
14
14
  #include <functional>
15
+ #include <NitroModules/JNICallable.hpp>
15
16
 
16
17
  namespace margelo::nitro::co::zyke::ble {
17
18
 
@@ -38,7 +39,7 @@ namespace margelo::nitro::co::zyke::ble {
38
39
  /**
39
40
  * An implementation of Func_void_bool_std__string_std__string that is backed by a C++ implementation (using `std::function<...>`)
40
41
  */
41
- struct JFunc_void_bool_std__string_std__string_cxx final: public jni::HybridClass<JFunc_void_bool_std__string_std__string_cxx, JFunc_void_bool_std__string_std__string> {
42
+ class JFunc_void_bool_std__string_std__string_cxx final: public jni::HybridClass<JFunc_void_bool_std__string_std__string_cxx, JFunc_void_bool_std__string_std__string> {
42
43
  public:
43
44
  static jni::local_ref<JFunc_void_bool_std__string_std__string::javaobject> fromCpp(const std::function<void(bool /* success */, const std::string& /* deviceId */, const std::string& /* error */)>& func) {
44
45
  return JFunc_void_bool_std__string_std__string_cxx::newObjectCxxArgs(func);
@@ -0,0 +1,91 @@
1
+ ///
2
+ /// JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__.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 <functional>
12
+
13
+ #include <NitroModules/Null.hpp>
14
+ #include "BLEDevice.hpp"
15
+ #include <variant>
16
+ #include <optional>
17
+ #include <string>
18
+ #include <functional>
19
+ #include <NitroModules/JNICallable.hpp>
20
+ #include "JVariant_NullType_BLEDevice.hpp"
21
+ #include <NitroModules/JNull.hpp>
22
+ #include "JBLEDevice.hpp"
23
+ #include "ManufacturerData.hpp"
24
+ #include "JManufacturerData.hpp"
25
+ #include "ManufacturerDataEntry.hpp"
26
+ #include <vector>
27
+ #include "JManufacturerDataEntry.hpp"
28
+ #include <NitroModules/ArrayBuffer.hpp>
29
+ #include <NitroModules/JArrayBuffer.hpp>
30
+ #include "JVariant_NullType_String.hpp"
31
+
32
+ namespace margelo::nitro::co::zyke::ble {
33
+
34
+ using namespace facebook;
35
+
36
+ /**
37
+ * Represents the Java/Kotlin callback `(device: Variant_NullType_BLEDevice?, error: Variant_NullType_String?) -> Unit`.
38
+ * This can be passed around between C++ and Java/Kotlin.
39
+ */
40
+ struct JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__: public jni::JavaClass<JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__> {
41
+ public:
42
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/co/zyke/ble/Func_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__;";
43
+
44
+ public:
45
+ /**
46
+ * Invokes the function this `JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__` instance holds through JNI.
47
+ */
48
+ void invoke(const std::optional<std::variant<nitro::NullType, BLEDevice>>& device, const std::optional<std::variant<nitro::NullType, std::string>>& error) const {
49
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JVariant_NullType_BLEDevice> /* device */, jni::alias_ref<JVariant_NullType_String> /* error */)>("invoke");
50
+ method(self(), device.has_value() ? JVariant_NullType_BLEDevice::fromCpp(device.value()) : nullptr, error.has_value() ? JVariant_NullType_String::fromCpp(error.value()) : nullptr);
51
+ }
52
+ };
53
+
54
+ /**
55
+ * An implementation of Func_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__ that is backed by a C++ implementation (using `std::function<...>`)
56
+ */
57
+ class JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string___cxx final: public jni::HybridClass<JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string___cxx, JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__> {
58
+ public:
59
+ static jni::local_ref<JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__::javaobject> fromCpp(const std::function<void(const std::optional<std::variant<nitro::NullType, BLEDevice>>& /* device */, const std::optional<std::variant<nitro::NullType, std::string>>& /* error */)>& func) {
60
+ return JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string___cxx::newObjectCxxArgs(func);
61
+ }
62
+
63
+ public:
64
+ /**
65
+ * Invokes the C++ `std::function<...>` this `JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string___cxx` instance holds.
66
+ */
67
+ void invoke_cxx(jni::alias_ref<JVariant_NullType_BLEDevice> device, jni::alias_ref<JVariant_NullType_String> error) {
68
+ _func(device != nullptr ? std::make_optional(device->toCpp()) : std::nullopt, error != nullptr ? std::make_optional(error->toCpp()) : std::nullopt);
69
+ }
70
+
71
+ public:
72
+ [[nodiscard]]
73
+ inline const std::function<void(const std::optional<std::variant<nitro::NullType, BLEDevice>>& /* device */, const std::optional<std::variant<nitro::NullType, std::string>>& /* error */)>& getFunction() const {
74
+ return _func;
75
+ }
76
+
77
+ public:
78
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/co/zyke/ble/Func_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string___cxx;";
79
+ static void registerNatives() {
80
+ registerHybrid({makeNativeMethod("invoke_cxx", JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string___cxx::invoke_cxx)});
81
+ }
82
+
83
+ private:
84
+ explicit JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string___cxx(const std::function<void(const std::optional<std::variant<nitro::NullType, BLEDevice>>& /* device */, const std::optional<std::variant<nitro::NullType, std::string>>& /* error */)>& func): _func(func) { }
85
+
86
+ private:
87
+ friend HybridBase;
88
+ std::function<void(const std::optional<std::variant<nitro::NullType, BLEDevice>>& /* device */, const std::optional<std::variant<nitro::NullType, std::string>>& /* error */)> _func;
89
+ };
90
+
91
+ } // namespace margelo::nitro::co::zyke::ble
@@ -2,7 +2,7 @@
2
2
  /// JFunc_void_std__string_bool_std__string.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -12,6 +12,7 @@
12
12
 
13
13
  #include <string>
14
14
  #include <functional>
15
+ #include <NitroModules/JNICallable.hpp>
15
16
 
16
17
  namespace margelo::nitro::co::zyke::ble {
17
18
 
@@ -38,7 +39,7 @@ namespace margelo::nitro::co::zyke::ble {
38
39
  /**
39
40
  * An implementation of Func_void_std__string_bool_std__string that is backed by a C++ implementation (using `std::function<...>`)
40
41
  */
41
- struct JFunc_void_std__string_bool_std__string_cxx final: public jni::HybridClass<JFunc_void_std__string_bool_std__string_cxx, JFunc_void_std__string_bool_std__string> {
42
+ class JFunc_void_std__string_bool_std__string_cxx final: public jni::HybridClass<JFunc_void_std__string_bool_std__string_cxx, JFunc_void_std__string_bool_std__string> {
42
43
  public:
43
44
  static jni::local_ref<JFunc_void_std__string_bool_std__string::javaobject> fromCpp(const std::function<void(const std::string& /* deviceId */, bool /* interrupted */, const std::string& /* error */)>& func) {
44
45
  return JFunc_void_std__string_bool_std__string_cxx::newObjectCxxArgs(func);
@@ -2,7 +2,7 @@
2
2
  /// JFunc_void_std__string_std__shared_ptr_ArrayBuffer_.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -13,8 +13,8 @@
13
13
  #include <string>
14
14
  #include <NitroModules/ArrayBuffer.hpp>
15
15
  #include <functional>
16
+ #include <NitroModules/JNICallable.hpp>
16
17
  #include <NitroModules/JArrayBuffer.hpp>
17
- #include <NitroModules/JUnit.hpp>
18
18
 
19
19
  namespace margelo::nitro::co::zyke::ble {
20
20
 
@@ -41,7 +41,7 @@ namespace margelo::nitro::co::zyke::ble {
41
41
  /**
42
42
  * An implementation of Func_void_std__string_std__shared_ptr_ArrayBuffer_ that is backed by a C++ implementation (using `std::function<...>`)
43
43
  */
44
- struct JFunc_void_std__string_std__shared_ptr_ArrayBuffer__cxx final: public jni::HybridClass<JFunc_void_std__string_std__shared_ptr_ArrayBuffer__cxx, JFunc_void_std__string_std__shared_ptr_ArrayBuffer_> {
44
+ class JFunc_void_std__string_std__shared_ptr_ArrayBuffer__cxx final: public jni::HybridClass<JFunc_void_std__string_std__shared_ptr_ArrayBuffer__cxx, JFunc_void_std__string_std__shared_ptr_ArrayBuffer_> {
45
45
  public:
46
46
  static jni::local_ref<JFunc_void_std__string_std__shared_ptr_ArrayBuffer_::javaobject> fromCpp(const std::function<void(const std::string& /* characteristicId */, const std::shared_ptr<ArrayBuffer>& /* data */)>& func) {
47
47
  return JFunc_void_std__string_std__shared_ptr_ArrayBuffer__cxx::newObjectCxxArgs(func);
@@ -2,7 +2,7 @@
2
2
  /// JFunc_void_std__vector_BLEDevice_.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -13,6 +13,7 @@
13
13
  #include "BLEDevice.hpp"
14
14
  #include <vector>
15
15
  #include <functional>
16
+ #include <NitroModules/JNICallable.hpp>
16
17
  #include "JBLEDevice.hpp"
17
18
  #include <string>
18
19
  #include "ManufacturerData.hpp"
@@ -21,7 +22,6 @@
21
22
  #include "JManufacturerDataEntry.hpp"
22
23
  #include <NitroModules/ArrayBuffer.hpp>
23
24
  #include <NitroModules/JArrayBuffer.hpp>
24
- #include <NitroModules/JUnit.hpp>
25
25
 
26
26
  namespace margelo::nitro::co::zyke::ble {
27
27
 
@@ -46,7 +46,8 @@ namespace margelo::nitro::co::zyke::ble {
46
46
  jni::local_ref<jni::JArrayClass<JBLEDevice>> __array = jni::JArrayClass<JBLEDevice>::newArray(__size);
47
47
  for (size_t __i = 0; __i < __size; __i++) {
48
48
  const auto& __element = peripherals[__i];
49
- __array->setElement(__i, *JBLEDevice::fromCpp(__element));
49
+ auto __elementJni = JBLEDevice::fromCpp(__element);
50
+ __array->setElement(__i, *__elementJni);
50
51
  }
51
52
  return __array;
52
53
  }());
@@ -56,7 +57,7 @@ namespace margelo::nitro::co::zyke::ble {
56
57
  /**
57
58
  * An implementation of Func_void_std__vector_BLEDevice_ that is backed by a C++ implementation (using `std::function<...>`)
58
59
  */
59
- struct JFunc_void_std__vector_BLEDevice__cxx final: public jni::HybridClass<JFunc_void_std__vector_BLEDevice__cxx, JFunc_void_std__vector_BLEDevice_> {
60
+ class JFunc_void_std__vector_BLEDevice__cxx final: public jni::HybridClass<JFunc_void_std__vector_BLEDevice__cxx, JFunc_void_std__vector_BLEDevice_> {
60
61
  public:
61
62
  static jni::local_ref<JFunc_void_std__vector_BLEDevice_::javaobject> fromCpp(const std::function<void(const std::vector<BLEDevice>& /* peripherals */)>& func) {
62
63
  return JFunc_void_std__vector_BLEDevice__cxx::newObjectCxxArgs(func);
@@ -2,7 +2,7 @@
2
2
  /// JHybridNativeBleNitroFactorySpec.cpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #include "JHybridNativeBleNitroFactorySpec.hpp"
@@ -15,8 +15,6 @@ namespace margelo::nitro::co::zyke::ble { struct BLEDevice; }
15
15
  namespace margelo::nitro::co::zyke::ble { struct ManufacturerData; }
16
16
  // Forward declaration of `ManufacturerDataEntry` to properly resolve imports.
17
17
  namespace margelo::nitro::co::zyke::ble { struct ManufacturerDataEntry; }
18
- // Forward declaration of `ArrayBuffer` to properly resolve imports.
19
- namespace NitroModules { class ArrayBuffer; }
20
18
 
21
19
  #include <memory>
22
20
  #include "HybridNativeBleNitroSpec.hpp"
@@ -27,6 +25,7 @@ namespace NitroModules { class ArrayBuffer; }
27
25
  #include <vector>
28
26
  #include <functional>
29
27
  #include "JFunc_void_std__vector_BLEDevice_.hpp"
28
+ #include <NitroModules/JNICallable.hpp>
30
29
  #include "JBLEDevice.hpp"
31
30
  #include "ManufacturerData.hpp"
32
31
  #include "JManufacturerData.hpp"
@@ -34,7 +33,6 @@ namespace NitroModules { class ArrayBuffer; }
34
33
  #include "JManufacturerDataEntry.hpp"
35
34
  #include <NitroModules/ArrayBuffer.hpp>
36
35
  #include <NitroModules/JArrayBuffer.hpp>
37
- #include <NitroModules/JUnit.hpp>
38
36
 
39
37
  namespace margelo::nitro::co::zyke::ble {
40
38
 
@@ -53,11 +51,24 @@ namespace margelo::nitro::co::zyke::ble {
53
51
  return method(_javaPart);
54
52
  }
55
53
 
54
+ bool JHybridNativeBleNitroFactorySpec::equals(const std::shared_ptr<HybridObject>& other) {
55
+ if (auto otherCast = std::dynamic_pointer_cast<JHybridNativeBleNitroFactorySpec>(other)) {
56
+ return _javaPart == otherCast->_javaPart;
57
+ }
58
+ return false;
59
+ }
60
+
56
61
  void JHybridNativeBleNitroFactorySpec::dispose() noexcept {
57
62
  static const auto method = javaClassStatic()->getMethod<void()>("dispose");
58
63
  method(_javaPart);
59
64
  }
60
65
 
66
+ std::string JHybridNativeBleNitroFactorySpec::toString() {
67
+ static const auto method = javaClassStatic()->getMethod<jni::JString()>("toString");
68
+ auto javaString = method(_javaPart);
69
+ return javaString->toStdString();
70
+ }
71
+
61
72
  // Properties
62
73
 
63
74
 
@@ -2,7 +2,7 @@
2
2
  /// HybridNativeBleNitroFactorySpec.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -40,7 +40,9 @@ namespace margelo::nitro::co::zyke::ble {
40
40
 
41
41
  public:
42
42
  size_t getExternalMemorySize() noexcept override;
43
+ bool equals(const std::shared_ptr<HybridObject>& other) override;
43
44
  void dispose() noexcept override;
45
+ std::string toString() override;
44
46
 
45
47
  public:
46
48
  inline const jni::global_ref<JHybridNativeBleNitroFactorySpec::javaobject>& getJavaPart() const noexcept {
@@ -2,7 +2,7 @@
2
2
  /// JHybridNativeBleNitroSpec.cpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #include "JHybridNativeBleNitroSpec.hpp"
@@ -13,8 +13,6 @@ namespace margelo::nitro::co::zyke::ble { struct BLEDevice; }
13
13
  namespace margelo::nitro::co::zyke::ble { struct ManufacturerData; }
14
14
  // Forward declaration of `ManufacturerDataEntry` to properly resolve imports.
15
15
  namespace margelo::nitro::co::zyke::ble { struct ManufacturerDataEntry; }
16
- // Forward declaration of `ArrayBuffer` to properly resolve imports.
17
- namespace NitroModules { class ArrayBuffer; }
18
16
  // Forward declaration of `BLEState` to properly resolve imports.
19
17
  namespace margelo::nitro::co::zyke::ble { enum class BLEState; }
20
18
  // Forward declaration of `OperationResult` to properly resolve imports.
@@ -35,20 +33,26 @@ namespace margelo::nitro::co::zyke::ble { enum class AndroidScanMode; }
35
33
  #include "JManufacturerDataEntry.hpp"
36
34
  #include <NitroModules/ArrayBuffer.hpp>
37
35
  #include <NitroModules/JArrayBuffer.hpp>
38
- #include <NitroModules/JUnit.hpp>
39
36
  #include "BLEState.hpp"
40
37
  #include "JBLEState.hpp"
41
38
  #include "OperationResult.hpp"
42
39
  #include "JOperationResult.hpp"
43
40
  #include <NitroModules/Promise.hpp>
44
41
  #include <NitroModules/JPromise.hpp>
42
+ #include <NitroModules/JUnit.hpp>
45
43
  #include <functional>
46
44
  #include "JFunc_void_std__vector_BLEDevice_.hpp"
45
+ #include <NitroModules/JNICallable.hpp>
47
46
  #include "ScanFilter.hpp"
48
47
  #include "JScanFilter.hpp"
49
48
  #include "AndroidScanMode.hpp"
50
49
  #include "JAndroidScanMode.hpp"
51
- #include "JFunc_void_std__optional_BLEDevice__std__optional_std__string_.hpp"
50
+ #include <NitroModules/Null.hpp>
51
+ #include <variant>
52
+ #include "JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__.hpp"
53
+ #include "JVariant_NullType_BLEDevice.hpp"
54
+ #include <NitroModules/JNull.hpp>
55
+ #include "JVariant_NullType_String.hpp"
52
56
  #include "JFunc_void_bool_std__string_std__string.hpp"
53
57
  #include "JFunc_void_std__string_bool_std__string.hpp"
54
58
  #include "JFunc_void_bool_std__string.hpp"
@@ -74,11 +78,24 @@ namespace margelo::nitro::co::zyke::ble {
74
78
  return method(_javaPart);
75
79
  }
76
80
 
81
+ bool JHybridNativeBleNitroSpec::equals(const std::shared_ptr<HybridObject>& other) {
82
+ if (auto otherCast = std::dynamic_pointer_cast<JHybridNativeBleNitroSpec>(other)) {
83
+ return _javaPart == otherCast->_javaPart;
84
+ }
85
+ return false;
86
+ }
87
+
77
88
  void JHybridNativeBleNitroSpec::dispose() noexcept {
78
89
  static const auto method = javaClassStatic()->getMethod<void()>("dispose");
79
90
  method(_javaPart);
80
91
  }
81
92
 
93
+ std::string JHybridNativeBleNitroSpec::toString() {
94
+ static const auto method = javaClassStatic()->getMethod<jni::JString()>("toString");
95
+ auto javaString = method(_javaPart);
96
+ return javaString->toStdString();
97
+ }
98
+
82
99
  // Properties
83
100
  std::optional<std::string> JHybridNativeBleNitroSpec::getRestoreStateIdentifier() {
84
101
  static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getRestoreStateIdentifier");
@@ -95,9 +112,13 @@ namespace margelo::nitro::co::zyke::ble {
95
112
  static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__vector_BLEDevice_::javaobject> /* callback */)>("setRestoreStateCallback_cxx");
96
113
  method(_javaPart, JFunc_void_std__vector_BLEDevice__cxx::fromCpp(callback));
97
114
  }
98
- void JHybridNativeBleNitroSpec::startScan(const ScanFilter& filter, const std::function<void(const std::optional<BLEDevice>& /* device */, const std::optional<std::string>& /* error */)>& callback) {
99
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JScanFilter> /* filter */, jni::alias_ref<JFunc_void_std__optional_BLEDevice__std__optional_std__string_::javaobject> /* callback */)>("startScan_cxx");
100
- method(_javaPart, JScanFilter::fromCpp(filter), JFunc_void_std__optional_BLEDevice__std__optional_std__string__cxx::fromCpp(callback));
115
+ void JHybridNativeBleNitroSpec::iosLazyInit() {
116
+ static const auto method = javaClassStatic()->getMethod<void()>("iosLazyInit");
117
+ method(_javaPart);
118
+ }
119
+ void JHybridNativeBleNitroSpec::startScan(const ScanFilter& filter, const std::function<void(const std::optional<std::variant<nitro::NullType, BLEDevice>>& /* device */, const std::optional<std::variant<nitro::NullType, std::string>>& /* error */)>& callback) {
120
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JScanFilter> /* filter */, jni::alias_ref<JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string__::javaobject> /* callback */)>("startScan_cxx");
121
+ method(_javaPart, JScanFilter::fromCpp(filter), JFunc_void_std__optional_std__variant_nitro__NullType__BLEDevice___std__optional_std__variant_nitro__NullType__std__string___cxx::fromCpp(callback));
101
122
  }
102
123
  bool JHybridNativeBleNitroSpec::stopScan() {
103
124
  static const auto method = javaClassStatic()->getMethod<jboolean()>("stopScan");
@@ -116,7 +137,8 @@ namespace margelo::nitro::co::zyke::ble {
116
137
  jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
117
138
  for (size_t __i = 0; __i < __size; __i++) {
118
139
  const auto& __element = services[__i];
119
- __array->setElement(__i, *jni::make_jstring(__element));
140
+ auto __elementJni = jni::make_jstring(__element);
141
+ __array->setElement(__i, *__elementJni);
120
142
  }
121
143
  return __array;
122
144
  }());
@@ -2,7 +2,7 @@
2
2
  /// HybridNativeBleNitroSpec.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -40,7 +40,9 @@ namespace margelo::nitro::co::zyke::ble {
40
40
 
41
41
  public:
42
42
  size_t getExternalMemorySize() noexcept override;
43
+ bool equals(const std::shared_ptr<HybridObject>& other) override;
43
44
  void dispose() noexcept override;
45
+ std::string toString() override;
44
46
 
45
47
  public:
46
48
  inline const jni::global_ref<JHybridNativeBleNitroSpec::javaobject>& getJavaPart() const noexcept {
@@ -55,7 +57,8 @@ namespace margelo::nitro::co::zyke::ble {
55
57
  public:
56
58
  // Methods
57
59
  void setRestoreStateCallback(const std::function<void(const std::vector<BLEDevice>& /* restoredPeripherals */)>& callback) override;
58
- void startScan(const ScanFilter& filter, const std::function<void(const std::optional<BLEDevice>& /* device */, const std::optional<std::string>& /* error */)>& callback) override;
60
+ void iosLazyInit() override;
61
+ void startScan(const ScanFilter& filter, const std::function<void(const std::optional<std::variant<nitro::NullType, BLEDevice>>& /* device */, const std::optional<std::variant<nitro::NullType, std::string>>& /* error */)>& callback) override;
59
62
  bool stopScan() override;
60
63
  bool isScanning() override;
61
64
  std::vector<BLEDevice> getConnectedDevices(const std::vector<std::string>& services) override;
@@ -2,7 +2,7 @@
2
2
  /// JManufacturerData.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -14,7 +14,6 @@
14
14
  #include "ManufacturerDataEntry.hpp"
15
15
  #include <NitroModules/ArrayBuffer.hpp>
16
16
  #include <NitroModules/JArrayBuffer.hpp>
17
- #include <NitroModules/JUnit.hpp>
18
17
  #include <string>
19
18
  #include <vector>
20
19
 
@@ -59,13 +58,18 @@ namespace margelo::nitro::co::zyke::ble {
59
58
  */
60
59
  [[maybe_unused]]
61
60
  static jni::local_ref<JManufacturerData::javaobject> fromCpp(const ManufacturerData& value) {
62
- return newInstance(
61
+ using JSignature = JManufacturerData(jni::alias_ref<jni::JArrayClass<JManufacturerDataEntry>>);
62
+ static const auto clazz = javaClassStatic();
63
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
64
+ return create(
65
+ clazz,
63
66
  [&]() {
64
67
  size_t __size = value.companyIdentifiers.size();
65
68
  jni::local_ref<jni::JArrayClass<JManufacturerDataEntry>> __array = jni::JArrayClass<JManufacturerDataEntry>::newArray(__size);
66
69
  for (size_t __i = 0; __i < __size; __i++) {
67
70
  const auto& __element = value.companyIdentifiers[__i];
68
- __array->setElement(__i, *JManufacturerDataEntry::fromCpp(__element));
71
+ auto __elementJni = JManufacturerDataEntry::fromCpp(__element);
72
+ __array->setElement(__i, *__elementJni);
69
73
  }
70
74
  return __array;
71
75
  }()
@@ -2,7 +2,7 @@
2
2
  /// JManufacturerDataEntry.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -12,7 +12,6 @@
12
12
 
13
13
  #include <NitroModules/ArrayBuffer.hpp>
14
14
  #include <NitroModules/JArrayBuffer.hpp>
15
- #include <NitroModules/JUnit.hpp>
16
15
  #include <string>
17
16
 
18
17
  namespace margelo::nitro::co::zyke::ble {
@@ -50,7 +49,11 @@ namespace margelo::nitro::co::zyke::ble {
50
49
  */
51
50
  [[maybe_unused]]
52
51
  static jni::local_ref<JManufacturerDataEntry::javaobject> fromCpp(const ManufacturerDataEntry& value) {
53
- return newInstance(
52
+ using JSignature = JManufacturerDataEntry(jni::alias_ref<jni::JString>, jni::alias_ref<JArrayBuffer::javaobject>);
53
+ static const auto clazz = javaClassStatic();
54
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
55
+ return create(
56
+ clazz,
54
57
  jni::make_jstring(value.id),
55
58
  JArrayBuffer::wrap(value.data)
56
59
  );
@@ -2,7 +2,7 @@
2
2
  /// JOperationResult.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -48,7 +48,11 @@ namespace margelo::nitro::co::zyke::ble {
48
48
  */
49
49
  [[maybe_unused]]
50
50
  static jni::local_ref<JOperationResult::javaobject> fromCpp(const OperationResult& value) {
51
- return newInstance(
51
+ using JSignature = JOperationResult(jboolean, jni::alias_ref<jni::JString>);
52
+ static const auto clazz = javaClassStatic();
53
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
54
+ return create(
55
+ clazz,
52
56
  value.success,
53
57
  value.error.has_value() ? jni::make_jstring(value.error.value()) : nullptr
54
58
  );
@@ -2,7 +2,7 @@
2
2
  /// JScanFilter.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -65,13 +65,18 @@ namespace margelo::nitro::co::zyke::ble {
65
65
  */
66
66
  [[maybe_unused]]
67
67
  static jni::local_ref<JScanFilter::javaobject> fromCpp(const ScanFilter& value) {
68
- return newInstance(
68
+ using JSignature = JScanFilter(jni::alias_ref<jni::JArrayClass<jni::JString>>, double, jboolean, jni::alias_ref<JAndroidScanMode>);
69
+ static const auto clazz = javaClassStatic();
70
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
71
+ return create(
72
+ clazz,
69
73
  [&]() {
70
74
  size_t __size = value.serviceUUIDs.size();
71
75
  jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
72
76
  for (size_t __i = 0; __i < __size; __i++) {
73
77
  const auto& __element = value.serviceUUIDs[__i];
74
- __array->setElement(__i, *jni::make_jstring(__element));
78
+ auto __elementJni = jni::make_jstring(__element);
79
+ __array->setElement(__i, *__elementJni);
75
80
  }
76
81
  return __array;
77
82
  }(),
@@ -0,0 +1,26 @@
1
+ ///
2
+ /// JVariant_NullType_BLEDevice.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 "JVariant_NullType_BLEDevice.hpp"
9
+
10
+ namespace margelo::nitro::co::zyke::ble {
11
+ /**
12
+ * Converts JVariant_NullType_BLEDevice to std::variant<nitro::NullType, BLEDevice>
13
+ */
14
+ std::variant<nitro::NullType, BLEDevice> JVariant_NullType_BLEDevice::toCpp() const {
15
+ if (isInstanceOf(JVariant_NullType_BLEDevice_impl::First::javaClassStatic())) {
16
+ // It's a `nitro::NullType`
17
+ auto jniValue = static_cast<const JVariant_NullType_BLEDevice_impl::First*>(this)->getValue();
18
+ return nitro::null;
19
+ } else if (isInstanceOf(JVariant_NullType_BLEDevice_impl::Second::javaClassStatic())) {
20
+ // It's a `BLEDevice`
21
+ auto jniValue = static_cast<const JVariant_NullType_BLEDevice_impl::Second*>(this)->getValue();
22
+ return jniValue->toCpp();
23
+ }
24
+ throw std::invalid_argument("Variant is unknown Kotlin instance!");
25
+ }
26
+ } // namespace margelo::nitro::co::zyke::ble