react-native-ble-nitro 1.9.2 → 1.9.4

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 (106) hide show
  1. package/README.md +2 -2
  2. package/ios/BleNitroBleManager.swift +2 -2
  3. package/lib/commonjs/manager.d.ts +1 -0
  4. package/lib/commonjs/manager.d.ts.map +1 -1
  5. package/lib/commonjs/manager.js +2 -0
  6. package/lib/commonjs/manager.js.map +1 -1
  7. package/lib/manager.d.ts +1 -0
  8. package/lib/manager.js +1 -0
  9. package/nitrogen/generated/android/BleNitro+autolinking.cmake +3 -1
  10. package/nitrogen/generated/android/BleNitro+autolinking.gradle +1 -1
  11. package/nitrogen/generated/android/BleNitroOnLoad.cpp +3 -3
  12. package/nitrogen/generated/android/BleNitroOnLoad.hpp +1 -1
  13. package/nitrogen/generated/android/c++/JAndroidScanMode.hpp +5 -6
  14. package/nitrogen/generated/android/c++/JBLEDevice.hpp +8 -4
  15. package/nitrogen/generated/android/c++/JBLEState.hpp +7 -8
  16. package/nitrogen/generated/android/c++/JFunc_void_BLEState.hpp +3 -2
  17. package/nitrogen/generated/android/c++/JFunc_void_bool_double_std__string.hpp +3 -2
  18. package/nitrogen/generated/android/c++/JFunc_void_bool_std__shared_ptr_ArrayBuffer__std__string.hpp +3 -3
  19. package/nitrogen/generated/android/c++/JFunc_void_bool_std__string.hpp +3 -2
  20. package/nitrogen/generated/android/c++/JFunc_void_bool_std__string_std__string.hpp +3 -2
  21. 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
  22. package/nitrogen/generated/android/c++/JFunc_void_std__string_bool_std__string.hpp +3 -2
  23. package/nitrogen/generated/android/c++/JFunc_void_std__string_std__shared_ptr_ArrayBuffer_.hpp +3 -3
  24. package/nitrogen/generated/android/c++/JFunc_void_std__vector_BLEDevice_.hpp +5 -4
  25. package/nitrogen/generated/android/c++/JHybridNativeBleNitroFactorySpec.cpp +15 -4
  26. package/nitrogen/generated/android/c++/JHybridNativeBleNitroFactorySpec.hpp +3 -1
  27. package/nitrogen/generated/android/c++/JHybridNativeBleNitroSpec.cpp +27 -9
  28. package/nitrogen/generated/android/c++/JHybridNativeBleNitroSpec.hpp +4 -2
  29. package/nitrogen/generated/android/c++/JManufacturerData.hpp +8 -4
  30. package/nitrogen/generated/android/c++/JManufacturerDataEntry.hpp +6 -3
  31. package/nitrogen/generated/android/c++/JOperationResult.hpp +6 -2
  32. package/nitrogen/generated/android/c++/JScanFilter.hpp +8 -3
  33. package/nitrogen/generated/android/c++/JVariant_NullType_BLEDevice.cpp +26 -0
  34. package/nitrogen/generated/android/c++/JVariant_NullType_BLEDevice.hpp +79 -0
  35. package/nitrogen/generated/android/c++/JVariant_NullType_String.cpp +26 -0
  36. package/nitrogen/generated/android/c++/JVariant_NullType_String.hpp +70 -0
  37. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/AndroidScanMode.kt +3 -1
  38. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BLEDevice.kt +34 -25
  39. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BLEState.kt +3 -1
  40. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleNitroOnLoad.kt +1 -1
  41. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_BLEState.kt +1 -2
  42. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_double_std__string.kt +1 -2
  43. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_std__shared_ptr_ArrayBuffer__std__string.kt +2 -3
  44. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_std__string.kt +1 -2
  45. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_std__string_std__string.kt +1 -2
  46. 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
  47. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__string_bool_std__string.kt +1 -2
  48. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__string_std__shared_ptr_ArrayBuffer_.kt +2 -3
  49. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__vector_BLEDevice_.kt +1 -2
  50. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridNativeBleNitroFactorySpec.kt +8 -3
  51. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridNativeBleNitroSpec.kt +13 -5
  52. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ManufacturerData.kt +16 -7
  53. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ManufacturerDataEntry.kt +20 -11
  54. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/OperationResult.kt +19 -10
  55. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ScanFilter.kt +25 -16
  56. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Variant_NullType_BLEDevice.kt +59 -0
  57. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Variant_NullType_String.kt +59 -0
  58. package/nitrogen/generated/ios/BleNitro+autolinking.rb +2 -2
  59. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Bridge.cpp +6 -5
  60. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Bridge.hpp +99 -27
  61. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Umbrella.hpp +3 -3
  62. package/nitrogen/generated/ios/BleNitroAutolinking.mm +1 -1
  63. package/nitrogen/generated/ios/BleNitroAutolinking.swift +13 -15
  64. package/nitrogen/generated/ios/c++/HybridNativeBleNitroFactorySpecSwift.cpp +1 -1
  65. package/nitrogen/generated/ios/c++/HybridNativeBleNitroFactorySpecSwift.hpp +10 -3
  66. package/nitrogen/generated/ios/c++/HybridNativeBleNitroSpecSwift.cpp +1 -1
  67. package/nitrogen/generated/ios/c++/HybridNativeBleNitroSpecSwift.hpp +13 -4
  68. package/nitrogen/generated/ios/swift/AndroidScanMode.swift +1 -1
  69. package/nitrogen/generated/ios/swift/BLEDevice.swift +15 -63
  70. package/nitrogen/generated/ios/swift/BLEState.swift +1 -1
  71. package/nitrogen/generated/ios/swift/Func_void.swift +1 -2
  72. package/nitrogen/generated/ios/swift/Func_void_BLEState.swift +1 -2
  73. package/nitrogen/generated/ios/swift/Func_void_bool_double_std__string.swift +1 -2
  74. package/nitrogen/generated/ios/swift/Func_void_bool_std__shared_ptr_ArrayBuffer__std__string.swift +1 -2
  75. package/nitrogen/generated/ios/swift/Func_void_bool_std__string.swift +1 -2
  76. package/nitrogen/generated/ios/swift/Func_void_bool_std__string_std__string.swift +1 -2
  77. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -2
  78. 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
  79. package/nitrogen/generated/ios/swift/Func_void_std__string_bool_std__string.swift +1 -2
  80. package/nitrogen/generated/ios/swift/Func_void_std__string_std__shared_ptr_ArrayBuffer_.swift +1 -2
  81. package/nitrogen/generated/ios/swift/Func_void_std__vector_BLEDevice_.swift +1 -2
  82. package/nitrogen/generated/ios/swift/HybridNativeBleNitroFactorySpec.swift +10 -4
  83. package/nitrogen/generated/ios/swift/HybridNativeBleNitroFactorySpec_cxx.swift +18 -3
  84. package/nitrogen/generated/ios/swift/HybridNativeBleNitroSpec.swift +11 -5
  85. package/nitrogen/generated/ios/swift/HybridNativeBleNitroSpec_cxx.swift +48 -12
  86. package/nitrogen/generated/ios/swift/ManufacturerData.swift +3 -15
  87. package/nitrogen/generated/ios/swift/ManufacturerDataEntry.swift +5 -17
  88. package/nitrogen/generated/ios/swift/OperationResult.swift +12 -30
  89. package/nitrogen/generated/ios/swift/ScanFilter.swift +9 -39
  90. package/nitrogen/generated/ios/swift/Variant_NullType_BLEDevice.swift +18 -0
  91. package/nitrogen/generated/ios/swift/Variant_NullType_String.swift +18 -0
  92. package/nitrogen/generated/shared/c++/AndroidScanMode.hpp +1 -1
  93. package/nitrogen/generated/shared/c++/BLEDevice.hpp +31 -23
  94. package/nitrogen/generated/shared/c++/BLEState.hpp +1 -1
  95. package/nitrogen/generated/shared/c++/HybridNativeBleNitroFactorySpec.cpp +1 -1
  96. package/nitrogen/generated/shared/c++/HybridNativeBleNitroFactorySpec.hpp +1 -1
  97. package/nitrogen/generated/shared/c++/HybridNativeBleNitroSpec.cpp +1 -1
  98. package/nitrogen/generated/shared/c++/HybridNativeBleNitroSpec.hpp +4 -4
  99. package/nitrogen/generated/shared/c++/ManufacturerData.hpp +13 -5
  100. package/nitrogen/generated/shared/c++/ManufacturerDataEntry.hpp +17 -10
  101. package/nitrogen/generated/shared/c++/OperationResult.hpp +16 -8
  102. package/nitrogen/generated/shared/c++/ScanFilter.hpp +22 -14
  103. package/package.json +10 -10
  104. package/src/manager.ts +2 -1
  105. package/nitrogen/generated/android/c++/JFunc_void_std__optional_BLEDevice__std__optional_std__string_.hpp +0 -86
  106. 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_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 © 2025 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 © 2025 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 © 2025 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 © 2025 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,9 @@ 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::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) {
116
+ 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");
117
+ 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
118
  }
102
119
  bool JHybridNativeBleNitroSpec::stopScan() {
103
120
  static const auto method = javaClassStatic()->getMethod<jboolean()>("stopScan");
@@ -116,7 +133,8 @@ namespace margelo::nitro::co::zyke::ble {
116
133
  jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
117
134
  for (size_t __i = 0; __i < __size; __i++) {
118
135
  const auto& __element = services[__i];
119
- __array->setElement(__i, *jni::make_jstring(__element));
136
+ auto __elementJni = jni::make_jstring(__element);
137
+ __array->setElement(__i, *__elementJni);
120
138
  }
121
139
  return __array;
122
140
  }());
@@ -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 © 2025 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,7 @@ 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 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
61
  bool stopScan() override;
60
62
  bool isScanning() override;
61
63
  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 © 2025 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 © 2025 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 © 2025 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 © 2025 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
@@ -0,0 +1,79 @@
1
+ ///
2
+ /// JVariant_NullType_BLEDevice.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 <variant>
12
+
13
+ #include <NitroModules/Null.hpp>
14
+ #include "BLEDevice.hpp"
15
+ #include <variant>
16
+ #include <NitroModules/JNull.hpp>
17
+ #include "JBLEDevice.hpp"
18
+ #include <string>
19
+ #include "ManufacturerData.hpp"
20
+ #include "JManufacturerData.hpp"
21
+ #include "ManufacturerDataEntry.hpp"
22
+ #include <vector>
23
+ #include "JManufacturerDataEntry.hpp"
24
+ #include <NitroModules/ArrayBuffer.hpp>
25
+ #include <NitroModules/JArrayBuffer.hpp>
26
+
27
+ namespace margelo::nitro::co::zyke::ble {
28
+
29
+ using namespace facebook;
30
+
31
+ /**
32
+ * The C++ JNI bridge between the C++ std::variant and the Java class "Variant_NullType_BLEDevice".
33
+ */
34
+ class JVariant_NullType_BLEDevice: public jni::JavaClass<JVariant_NullType_BLEDevice> {
35
+ public:
36
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/co/zyke/ble/Variant_NullType_BLEDevice;";
37
+
38
+ static jni::local_ref<JVariant_NullType_BLEDevice> create_0(jni::alias_ref<JNull> value) {
39
+ static const auto method = javaClassStatic()->getStaticMethod<JVariant_NullType_BLEDevice(jni::alias_ref<JNull>)>("create");
40
+ return method(javaClassStatic(), value);
41
+ }
42
+ static jni::local_ref<JVariant_NullType_BLEDevice> create_1(jni::alias_ref<JBLEDevice> value) {
43
+ static const auto method = javaClassStatic()->getStaticMethod<JVariant_NullType_BLEDevice(jni::alias_ref<JBLEDevice>)>("create");
44
+ return method(javaClassStatic(), value);
45
+ }
46
+
47
+ static jni::local_ref<JVariant_NullType_BLEDevice> fromCpp(const std::variant<nitro::NullType, BLEDevice>& variant) {
48
+ switch (variant.index()) {
49
+ case 0: return create_0(JNull::null());
50
+ case 1: return create_1(JBLEDevice::fromCpp(std::get<1>(variant)));
51
+ default: throw std::invalid_argument("Variant holds unknown index! (" + std::to_string(variant.index()) + ")");
52
+ }
53
+ }
54
+
55
+ [[nodiscard]] std::variant<nitro::NullType, BLEDevice> toCpp() const;
56
+ };
57
+
58
+ namespace JVariant_NullType_BLEDevice_impl {
59
+ class First final: public jni::JavaClass<First, JVariant_NullType_BLEDevice> {
60
+ public:
61
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/co/zyke/ble/Variant_NullType_BLEDevice$First;";
62
+
63
+ [[nodiscard]] jni::local_ref<JNull> getValue() const {
64
+ static const auto field = javaClassStatic()->getField<JNull>("value");
65
+ return getFieldValue(field);
66
+ }
67
+ };
68
+
69
+ class Second final: public jni::JavaClass<Second, JVariant_NullType_BLEDevice> {
70
+ public:
71
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/co/zyke/ble/Variant_NullType_BLEDevice$Second;";
72
+
73
+ [[nodiscard]] jni::local_ref<JBLEDevice> getValue() const {
74
+ static const auto field = javaClassStatic()->getField<JBLEDevice>("value");
75
+ return getFieldValue(field);
76
+ }
77
+ };
78
+ } // namespace JVariant_NullType_BLEDevice_impl
79
+ } // namespace margelo::nitro::co::zyke::ble
@@ -0,0 +1,26 @@
1
+ ///
2
+ /// JVariant_NullType_String.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_String.hpp"
9
+
10
+ namespace margelo::nitro::co::zyke::ble {
11
+ /**
12
+ * Converts JVariant_NullType_String to std::variant<nitro::NullType, std::string>
13
+ */
14
+ std::variant<nitro::NullType, std::string> JVariant_NullType_String::toCpp() const {
15
+ if (isInstanceOf(JVariant_NullType_String_impl::First::javaClassStatic())) {
16
+ // It's a `nitro::NullType`
17
+ auto jniValue = static_cast<const JVariant_NullType_String_impl::First*>(this)->getValue();
18
+ return nitro::null;
19
+ } else if (isInstanceOf(JVariant_NullType_String_impl::Second::javaClassStatic())) {
20
+ // It's a `std::string`
21
+ auto jniValue = static_cast<const JVariant_NullType_String_impl::Second*>(this)->getValue();
22
+ return jniValue->toStdString();
23
+ }
24
+ throw std::invalid_argument("Variant is unknown Kotlin instance!");
25
+ }
26
+ } // namespace margelo::nitro::co::zyke::ble
@@ -0,0 +1,70 @@
1
+ ///
2
+ /// JVariant_NullType_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 <variant>
12
+
13
+ #include <NitroModules/Null.hpp>
14
+ #include <string>
15
+ #include <variant>
16
+ #include <NitroModules/JNull.hpp>
17
+
18
+ namespace margelo::nitro::co::zyke::ble {
19
+
20
+ using namespace facebook;
21
+
22
+ /**
23
+ * The C++ JNI bridge between the C++ std::variant and the Java class "Variant_NullType_String".
24
+ */
25
+ class JVariant_NullType_String: public jni::JavaClass<JVariant_NullType_String> {
26
+ public:
27
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/co/zyke/ble/Variant_NullType_String;";
28
+
29
+ static jni::local_ref<JVariant_NullType_String> create_0(jni::alias_ref<JNull> value) {
30
+ static const auto method = javaClassStatic()->getStaticMethod<JVariant_NullType_String(jni::alias_ref<JNull>)>("create");
31
+ return method(javaClassStatic(), value);
32
+ }
33
+ static jni::local_ref<JVariant_NullType_String> create_1(jni::alias_ref<jni::JString> value) {
34
+ static const auto method = javaClassStatic()->getStaticMethod<JVariant_NullType_String(jni::alias_ref<jni::JString>)>("create");
35
+ return method(javaClassStatic(), value);
36
+ }
37
+
38
+ static jni::local_ref<JVariant_NullType_String> fromCpp(const std::variant<nitro::NullType, std::string>& variant) {
39
+ switch (variant.index()) {
40
+ case 0: return create_0(JNull::null());
41
+ case 1: return create_1(jni::make_jstring(std::get<1>(variant)));
42
+ default: throw std::invalid_argument("Variant holds unknown index! (" + std::to_string(variant.index()) + ")");
43
+ }
44
+ }
45
+
46
+ [[nodiscard]] std::variant<nitro::NullType, std::string> toCpp() const;
47
+ };
48
+
49
+ namespace JVariant_NullType_String_impl {
50
+ class First final: public jni::JavaClass<First, JVariant_NullType_String> {
51
+ public:
52
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/co/zyke/ble/Variant_NullType_String$First;";
53
+
54
+ [[nodiscard]] jni::local_ref<JNull> getValue() const {
55
+ static const auto field = javaClassStatic()->getField<JNull>("value");
56
+ return getFieldValue(field);
57
+ }
58
+ };
59
+
60
+ class Second final: public jni::JavaClass<Second, JVariant_NullType_String> {
61
+ public:
62
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/co/zyke/ble/Variant_NullType_String$Second;";
63
+
64
+ [[nodiscard]] jni::local_ref<jni::JString> getValue() const {
65
+ static const auto field = javaClassStatic()->getField<jni::JString>("value");
66
+ return getFieldValue(field);
67
+ }
68
+ };
69
+ } // namespace JVariant_NullType_String_impl
70
+ } // namespace margelo::nitro::co::zyke::ble
@@ -2,7 +2,7 @@
2
2
  /// AndroidScanMode.kt
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2025 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  package com.margelo.nitro.co.zyke.ble
@@ -20,4 +20,6 @@ enum class AndroidScanMode(@DoNotStrip @Keep val value: Int) {
20
20
  BALANCED(1),
21
21
  LOWPOWER(2),
22
22
  OPPORTUNISTIC(3);
23
+
24
+ companion object
23
25
  }