react-native-nitro-player 0.7.0 → 0.7.1-alpha.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.
- package/README.md +47 -46
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridAndroidAutoMediaLibrary.kt +9 -13
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridAudioDevices.kt +45 -90
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridDownloadManager.kt +48 -182
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridEqualizer.kt +21 -77
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridPlayerQueue.kt +55 -104
- package/android/src/main/java/com/margelo/nitro/nitroplayer/HybridTrackPlayer.kt +113 -123
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/ExoPlayerCore.kt +82 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/ListenerRegistry.kt +48 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerAndroidAuto.kt +62 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerCore.kt +153 -1887
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerListener.kt +122 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerNotify.kt +44 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerPlayback.kt +162 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerQueue.kt +179 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerQueueBuild.kt +170 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerSetup.kt +28 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerTempQueue.kt +121 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/core/TrackPlayerUrlLoader.kt +98 -0
- package/android/src/main/java/com/margelo/nitro/nitroplayer/download/DownloadDatabase.kt +27 -18
- package/android/src/main/java/com/margelo/nitro/nitroplayer/equalizer/EqualizerCore.kt +150 -135
- package/android/src/main/java/com/margelo/nitro/nitroplayer/media/MediaSessionManager.kt +13 -30
- package/android/src/main/java/com/margelo/nitro/nitroplayer/playlist/PlaylistManager.kt +102 -162
- package/ios/HybridDownloadManager.swift +32 -26
- package/ios/HybridEqualizer.swift +48 -35
- package/ios/HybridTrackPlayer.swift +127 -102
- package/ios/core/ListenerRegistry.swift +60 -0
- package/ios/core/TrackPlayerCore.swift +130 -2356
- package/ios/core/TrackPlayerListener.swift +395 -0
- package/ios/core/TrackPlayerNotify.swift +52 -0
- package/ios/core/TrackPlayerPlayback.swift +274 -0
- package/ios/core/TrackPlayerQueue.swift +221 -0
- package/ios/core/TrackPlayerQueueBuild.swift +493 -0
- package/ios/core/TrackPlayerTempQueue.swift +167 -0
- package/ios/core/TrackPlayerUrlLoader.swift +169 -0
- package/ios/equalizer/EqualizerCore.swift +63 -123
- package/ios/media/MediaSessionManager.swift +32 -49
- package/ios/playlist/PlaylistManager.swift +2 -9
- package/ios/queue/HybridPlayerQueue.swift +69 -66
- package/lib/hooks/useDownloadedTracks.js +16 -13
- package/lib/hooks/useEqualizer.d.ts +4 -4
- package/lib/hooks/useEqualizer.js +22 -17
- package/lib/hooks/useEqualizerPresets.d.ts +3 -3
- package/lib/hooks/useEqualizerPresets.js +12 -18
- package/lib/specs/AndroidAutoMediaLibrary.nitro.d.ts +2 -2
- package/lib/specs/AudioDevices.nitro.d.ts +2 -2
- package/lib/specs/DownloadManager.nitro.d.ts +10 -10
- package/lib/specs/Equalizer.nitro.d.ts +10 -10
- package/lib/specs/TrackPlayer.nitro.d.ts +38 -16
- package/lib/types/EqualizerTypes.d.ts +3 -3
- package/nitrogen/generated/android/NitroPlayerOnLoad.cpp +2 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_TrackItem__std__vector_TrackItem_.hpp +122 -0
- package/nitrogen/generated/android/c++/JHybridAndroidAutoMediaLibrarySpec.cpp +31 -6
- package/nitrogen/generated/android/c++/JHybridAndroidAutoMediaLibrarySpec.hpp +2 -2
- package/nitrogen/generated/android/c++/JHybridAudioDevicesSpec.cpp +16 -3
- package/nitrogen/generated/android/c++/JHybridAudioDevicesSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/JHybridDownloadManagerSpec.cpp +154 -44
- package/nitrogen/generated/android/c++/JHybridDownloadManagerSpec.hpp +10 -10
- package/nitrogen/generated/android/c++/JHybridEqualizerSpec.cpp +130 -34
- package/nitrogen/generated/android/c++/JHybridEqualizerSpec.hpp +9 -9
- package/nitrogen/generated/android/c++/JHybridPlayerQueueSpec.cpp +115 -24
- package/nitrogen/generated/android/c++/JHybridPlayerQueueSpec.hpp +8 -8
- package/nitrogen/generated/android/c++/JHybridTrackPlayerSpec.cpp +243 -24
- package/nitrogen/generated/android/c++/JHybridTrackPlayerSpec.hpp +16 -8
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/Func_void_std__vector_TrackItem__std__vector_TrackItem_.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridAndroidAutoMediaLibrarySpec.kt +3 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridAudioDevicesSpec.kt +2 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridDownloadManagerSpec.kt +10 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridEqualizerSpec.kt +10 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridPlayerQueueSpec.kt +9 -8
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitroplayer/HybridTrackPlayerSpec.kt +45 -8
- package/nitrogen/generated/ios/NitroPlayer-Swift-Cxx-Bridge.cpp +74 -18
- package/nitrogen/generated/ios/NitroPlayer-Swift-Cxx-Bridge.hpp +380 -151
- package/nitrogen/generated/ios/c++/HybridDownloadManagerSpecSwift.hpp +10 -10
- package/nitrogen/generated/ios/c++/HybridEqualizerSpecSwift.hpp +12 -9
- package/nitrogen/generated/ios/c++/HybridPlayerQueueSpecSwift.hpp +23 -8
- package/nitrogen/generated/ios/c++/HybridTrackPlayerSpecSwift.hpp +82 -8
- package/nitrogen/generated/ios/swift/Func_void_EqualizerState.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__DownloadedPlaylist_.swift +58 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__DownloadedTrack_.swift +58 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__std__string_.swift +58 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_DownloadedPlaylist_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_DownloadedTrack_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_EqualizerBand_.swift +5 -5
- package/nitrogen/generated/ios/swift/Func_void_std__vector_TrackItem__std__vector_TrackItem_.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridDownloadManagerSpec.swift +10 -10
- package/nitrogen/generated/ios/swift/HybridDownloadManagerSpec_cxx.swift +141 -71
- package/nitrogen/generated/ios/swift/HybridEqualizerSpec.swift +9 -9
- package/nitrogen/generated/ios/swift/HybridEqualizerSpec_cxx.swift +105 -41
- package/nitrogen/generated/ios/swift/HybridPlayerQueueSpec.swift +8 -8
- package/nitrogen/generated/ios/swift/HybridPlayerQueueSpec_cxx.swift +95 -32
- package/nitrogen/generated/ios/swift/HybridTrackPlayerSpec.swift +16 -8
- package/nitrogen/generated/ios/swift/HybridTrackPlayerSpec_cxx.swift +267 -32
- package/nitrogen/generated/shared/c++/HybridAndroidAutoMediaLibrarySpec.hpp +3 -2
- package/nitrogen/generated/shared/c++/HybridAudioDevicesSpec.hpp +2 -1
- package/nitrogen/generated/shared/c++/HybridDownloadManagerSpec.hpp +10 -10
- package/nitrogen/generated/shared/c++/HybridEqualizerSpec.hpp +10 -9
- package/nitrogen/generated/shared/c++/HybridPlayerQueueSpec.hpp +9 -8
- package/nitrogen/generated/shared/c++/HybridTrackPlayerSpec.cpp +8 -0
- package/nitrogen/generated/shared/c++/HybridTrackPlayerSpec.hpp +16 -8
- package/package.json +5 -5
- package/src/hooks/useDownloadedTracks.ts +17 -13
- package/src/hooks/useEqualizer.ts +26 -21
- package/src/hooks/useEqualizerPresets.ts +15 -21
- package/src/specs/AndroidAutoMediaLibrary.nitro.ts +2 -2
- package/src/specs/AudioDevices.nitro.ts +2 -2
- package/src/specs/DownloadManager.nitro.ts +10 -10
- package/src/specs/Equalizer.nitro.ts +10 -10
- package/src/specs/TrackPlayer.nitro.ts +52 -16
- package/src/types/EqualizerTypes.ts +17 -13
|
@@ -240,7 +240,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
240
240
|
auto __value = std::move(__result.value());
|
|
241
241
|
return __value;
|
|
242
242
|
}
|
|
243
|
-
inline bool isTrackDownloaded(const std::string& trackId) override {
|
|
243
|
+
inline std::shared_ptr<Promise<bool>> isTrackDownloaded(const std::string& trackId) override {
|
|
244
244
|
auto __result = _swiftPart.isTrackDownloaded(trackId);
|
|
245
245
|
if (__result.hasError()) [[unlikely]] {
|
|
246
246
|
std::rethrow_exception(__result.error());
|
|
@@ -248,7 +248,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
248
248
|
auto __value = std::move(__result.value());
|
|
249
249
|
return __value;
|
|
250
250
|
}
|
|
251
|
-
inline bool isPlaylistDownloaded(const std::string& playlistId) override {
|
|
251
|
+
inline std::shared_ptr<Promise<bool>> isPlaylistDownloaded(const std::string& playlistId) override {
|
|
252
252
|
auto __result = _swiftPart.isPlaylistDownloaded(playlistId);
|
|
253
253
|
if (__result.hasError()) [[unlikely]] {
|
|
254
254
|
std::rethrow_exception(__result.error());
|
|
@@ -256,7 +256,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
256
256
|
auto __value = std::move(__result.value());
|
|
257
257
|
return __value;
|
|
258
258
|
}
|
|
259
|
-
inline bool isPlaylistPartiallyDownloaded(const std::string& playlistId) override {
|
|
259
|
+
inline std::shared_ptr<Promise<bool>> isPlaylistPartiallyDownloaded(const std::string& playlistId) override {
|
|
260
260
|
auto __result = _swiftPart.isPlaylistPartiallyDownloaded(playlistId);
|
|
261
261
|
if (__result.hasError()) [[unlikely]] {
|
|
262
262
|
std::rethrow_exception(__result.error());
|
|
@@ -264,7 +264,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
264
264
|
auto __value = std::move(__result.value());
|
|
265
265
|
return __value;
|
|
266
266
|
}
|
|
267
|
-
inline std::variant<nitro::NullType, DownloadedTrack
|
|
267
|
+
inline std::shared_ptr<Promise<std::variant<nitro::NullType, DownloadedTrack>>> getDownloadedTrack(const std::string& trackId) override {
|
|
268
268
|
auto __result = _swiftPart.getDownloadedTrack(trackId);
|
|
269
269
|
if (__result.hasError()) [[unlikely]] {
|
|
270
270
|
std::rethrow_exception(__result.error());
|
|
@@ -272,7 +272,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
272
272
|
auto __value = std::move(__result.value());
|
|
273
273
|
return __value;
|
|
274
274
|
}
|
|
275
|
-
inline std::vector<DownloadedTrack
|
|
275
|
+
inline std::shared_ptr<Promise<std::vector<DownloadedTrack>>> getAllDownloadedTracks() override {
|
|
276
276
|
auto __result = _swiftPart.getAllDownloadedTracks();
|
|
277
277
|
if (__result.hasError()) [[unlikely]] {
|
|
278
278
|
std::rethrow_exception(__result.error());
|
|
@@ -280,7 +280,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
280
280
|
auto __value = std::move(__result.value());
|
|
281
281
|
return __value;
|
|
282
282
|
}
|
|
283
|
-
inline std::variant<nitro::NullType, DownloadedPlaylist
|
|
283
|
+
inline std::shared_ptr<Promise<std::variant<nitro::NullType, DownloadedPlaylist>>> getDownloadedPlaylist(const std::string& playlistId) override {
|
|
284
284
|
auto __result = _swiftPart.getDownloadedPlaylist(playlistId);
|
|
285
285
|
if (__result.hasError()) [[unlikely]] {
|
|
286
286
|
std::rethrow_exception(__result.error());
|
|
@@ -288,7 +288,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
288
288
|
auto __value = std::move(__result.value());
|
|
289
289
|
return __value;
|
|
290
290
|
}
|
|
291
|
-
inline std::vector<DownloadedPlaylist
|
|
291
|
+
inline std::shared_ptr<Promise<std::vector<DownloadedPlaylist>>> getAllDownloadedPlaylists() override {
|
|
292
292
|
auto __result = _swiftPart.getAllDownloadedPlaylists();
|
|
293
293
|
if (__result.hasError()) [[unlikely]] {
|
|
294
294
|
std::rethrow_exception(__result.error());
|
|
@@ -296,7 +296,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
296
296
|
auto __value = std::move(__result.value());
|
|
297
297
|
return __value;
|
|
298
298
|
}
|
|
299
|
-
inline std::variant<nitro::NullType, std::string
|
|
299
|
+
inline std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>> getLocalPath(const std::string& trackId) override {
|
|
300
300
|
auto __result = _swiftPart.getLocalPath(trackId);
|
|
301
301
|
if (__result.hasError()) [[unlikely]] {
|
|
302
302
|
std::rethrow_exception(__result.error());
|
|
@@ -336,7 +336,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
336
336
|
auto __value = std::move(__result.value());
|
|
337
337
|
return __value;
|
|
338
338
|
}
|
|
339
|
-
inline double syncDownloads() override {
|
|
339
|
+
inline std::shared_ptr<Promise<double>> syncDownloads() override {
|
|
340
340
|
auto __result = _swiftPart.syncDownloads();
|
|
341
341
|
if (__result.hasError()) [[unlikely]] {
|
|
342
342
|
std::rethrow_exception(__result.error());
|
|
@@ -358,7 +358,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
358
358
|
auto __value = std::move(__result.value());
|
|
359
359
|
return __value;
|
|
360
360
|
}
|
|
361
|
-
inline std::string getEffectiveUrl(const TrackItem& track) override {
|
|
361
|
+
inline std::shared_ptr<Promise<std::string>> getEffectiveUrl(const TrackItem& track) override {
|
|
362
362
|
auto __result = _swiftPart.getEffectiveUrl(std::forward<decltype(track)>(track));
|
|
363
363
|
if (__result.hasError()) [[unlikely]] {
|
|
364
364
|
std::rethrow_exception(__result.error());
|
|
@@ -23,6 +23,7 @@ namespace margelo::nitro::nitroplayer { enum class PresetType; }
|
|
|
23
23
|
// Forward declaration of `EqualizerState` to properly resolve imports.
|
|
24
24
|
namespace margelo::nitro::nitroplayer { struct EqualizerState; }
|
|
25
25
|
|
|
26
|
+
#include <NitroModules/Promise.hpp>
|
|
26
27
|
#include "EqualizerBand.hpp"
|
|
27
28
|
#include <vector>
|
|
28
29
|
#include <string>
|
|
@@ -85,7 +86,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
85
86
|
|
|
86
87
|
public:
|
|
87
88
|
// Methods
|
|
88
|
-
inline
|
|
89
|
+
inline std::shared_ptr<Promise<void>> setEnabled(bool enabled) override {
|
|
89
90
|
auto __result = _swiftPart.setEnabled(std::forward<decltype(enabled)>(enabled));
|
|
90
91
|
if (__result.hasError()) [[unlikely]] {
|
|
91
92
|
std::rethrow_exception(__result.error());
|
|
@@ -101,7 +102,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
101
102
|
auto __value = std::move(__result.value());
|
|
102
103
|
return __value;
|
|
103
104
|
}
|
|
104
|
-
inline std::vector<EqualizerBand
|
|
105
|
+
inline std::shared_ptr<Promise<std::vector<EqualizerBand>>> getBands() override {
|
|
105
106
|
auto __result = _swiftPart.getBands();
|
|
106
107
|
if (__result.hasError()) [[unlikely]] {
|
|
107
108
|
std::rethrow_exception(__result.error());
|
|
@@ -109,7 +110,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
109
110
|
auto __value = std::move(__result.value());
|
|
110
111
|
return __value;
|
|
111
112
|
}
|
|
112
|
-
inline
|
|
113
|
+
inline std::shared_ptr<Promise<void>> setBandGain(double bandIndex, double gainDb) override {
|
|
113
114
|
auto __result = _swiftPart.setBandGain(std::forward<decltype(bandIndex)>(bandIndex), std::forward<decltype(gainDb)>(gainDb));
|
|
114
115
|
if (__result.hasError()) [[unlikely]] {
|
|
115
116
|
std::rethrow_exception(__result.error());
|
|
@@ -117,7 +118,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
117
118
|
auto __value = std::move(__result.value());
|
|
118
119
|
return __value;
|
|
119
120
|
}
|
|
120
|
-
inline
|
|
121
|
+
inline std::shared_ptr<Promise<void>> setAllBandGains(const std::vector<double>& gains) override {
|
|
121
122
|
auto __result = _swiftPart.setAllBandGains(gains);
|
|
122
123
|
if (__result.hasError()) [[unlikely]] {
|
|
123
124
|
std::rethrow_exception(__result.error());
|
|
@@ -157,7 +158,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
157
158
|
auto __value = std::move(__result.value());
|
|
158
159
|
return __value;
|
|
159
160
|
}
|
|
160
|
-
inline
|
|
161
|
+
inline std::shared_ptr<Promise<void>> applyPreset(const std::string& presetName) override {
|
|
161
162
|
auto __result = _swiftPart.applyPreset(presetName);
|
|
162
163
|
if (__result.hasError()) [[unlikely]] {
|
|
163
164
|
std::rethrow_exception(__result.error());
|
|
@@ -173,7 +174,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
173
174
|
auto __value = std::move(__result.value());
|
|
174
175
|
return __value;
|
|
175
176
|
}
|
|
176
|
-
inline
|
|
177
|
+
inline std::shared_ptr<Promise<void>> saveCustomPreset(const std::string& name) override {
|
|
177
178
|
auto __result = _swiftPart.saveCustomPreset(name);
|
|
178
179
|
if (__result.hasError()) [[unlikely]] {
|
|
179
180
|
std::rethrow_exception(__result.error());
|
|
@@ -181,7 +182,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
181
182
|
auto __value = std::move(__result.value());
|
|
182
183
|
return __value;
|
|
183
184
|
}
|
|
184
|
-
inline
|
|
185
|
+
inline std::shared_ptr<Promise<void>> deleteCustomPreset(const std::string& name) override {
|
|
185
186
|
auto __result = _swiftPart.deleteCustomPreset(name);
|
|
186
187
|
if (__result.hasError()) [[unlikely]] {
|
|
187
188
|
std::rethrow_exception(__result.error());
|
|
@@ -189,7 +190,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
189
190
|
auto __value = std::move(__result.value());
|
|
190
191
|
return __value;
|
|
191
192
|
}
|
|
192
|
-
inline EqualizerState getState() override {
|
|
193
|
+
inline std::shared_ptr<Promise<EqualizerState>> getState() override {
|
|
193
194
|
auto __result = _swiftPart.getState();
|
|
194
195
|
if (__result.hasError()) [[unlikely]] {
|
|
195
196
|
std::rethrow_exception(__result.error());
|
|
@@ -197,11 +198,13 @@ namespace margelo::nitro::nitroplayer {
|
|
|
197
198
|
auto __value = std::move(__result.value());
|
|
198
199
|
return __value;
|
|
199
200
|
}
|
|
200
|
-
inline void reset() override {
|
|
201
|
+
inline std::shared_ptr<Promise<void>> reset() override {
|
|
201
202
|
auto __result = _swiftPart.reset();
|
|
202
203
|
if (__result.hasError()) [[unlikely]] {
|
|
203
204
|
std::rethrow_exception(__result.error());
|
|
204
205
|
}
|
|
206
|
+
auto __value = std::move(__result.value());
|
|
207
|
+
return __value;
|
|
205
208
|
}
|
|
206
209
|
inline void onEnabledChange(const std::function<void(bool /* enabled */)>& callback) override {
|
|
207
210
|
auto __result = _swiftPart.onEnabledChange(callback);
|
|
@@ -20,6 +20,7 @@ namespace margelo::nitro::nitroplayer { struct TrackItem; }
|
|
|
20
20
|
namespace margelo::nitro::nitroplayer { enum class QueueOperation; }
|
|
21
21
|
|
|
22
22
|
#include <string>
|
|
23
|
+
#include <NitroModules/Promise.hpp>
|
|
23
24
|
#include <optional>
|
|
24
25
|
#include <NitroModules/Null.hpp>
|
|
25
26
|
#include "Playlist.hpp"
|
|
@@ -80,7 +81,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
80
81
|
|
|
81
82
|
public:
|
|
82
83
|
// Methods
|
|
83
|
-
inline std::string createPlaylist(const std::string& name, const std::optional<std::string>& description, const std::optional<std::string>& artwork) override {
|
|
84
|
+
inline std::shared_ptr<Promise<std::string>> createPlaylist(const std::string& name, const std::optional<std::string>& description, const std::optional<std::string>& artwork) override {
|
|
84
85
|
auto __result = _swiftPart.createPlaylist(name, description, artwork);
|
|
85
86
|
if (__result.hasError()) [[unlikely]] {
|
|
86
87
|
std::rethrow_exception(__result.error());
|
|
@@ -88,17 +89,21 @@ namespace margelo::nitro::nitroplayer {
|
|
|
88
89
|
auto __value = std::move(__result.value());
|
|
89
90
|
return __value;
|
|
90
91
|
}
|
|
91
|
-
inline void deletePlaylist(const std::string& playlistId) override {
|
|
92
|
+
inline std::shared_ptr<Promise<void>> deletePlaylist(const std::string& playlistId) override {
|
|
92
93
|
auto __result = _swiftPart.deletePlaylist(playlistId);
|
|
93
94
|
if (__result.hasError()) [[unlikely]] {
|
|
94
95
|
std::rethrow_exception(__result.error());
|
|
95
96
|
}
|
|
97
|
+
auto __value = std::move(__result.value());
|
|
98
|
+
return __value;
|
|
96
99
|
}
|
|
97
|
-
inline void updatePlaylist(const std::string& playlistId, const std::optional<std::string>& name, const std::optional<std::string>& description, const std::optional<std::string>& artwork) override {
|
|
100
|
+
inline std::shared_ptr<Promise<void>> updatePlaylist(const std::string& playlistId, const std::optional<std::string>& name, const std::optional<std::string>& description, const std::optional<std::string>& artwork) override {
|
|
98
101
|
auto __result = _swiftPart.updatePlaylist(playlistId, name, description, artwork);
|
|
99
102
|
if (__result.hasError()) [[unlikely]] {
|
|
100
103
|
std::rethrow_exception(__result.error());
|
|
101
104
|
}
|
|
105
|
+
auto __value = std::move(__result.value());
|
|
106
|
+
return __value;
|
|
102
107
|
}
|
|
103
108
|
inline std::variant<nitro::NullType, Playlist> getPlaylist(const std::string& playlistId) override {
|
|
104
109
|
auto __result = _swiftPart.getPlaylist(playlistId);
|
|
@@ -116,35 +121,45 @@ namespace margelo::nitro::nitroplayer {
|
|
|
116
121
|
auto __value = std::move(__result.value());
|
|
117
122
|
return __value;
|
|
118
123
|
}
|
|
119
|
-
inline void addTrackToPlaylist(const std::string& playlistId, const TrackItem& track, std::optional<double> index) override {
|
|
124
|
+
inline std::shared_ptr<Promise<void>> addTrackToPlaylist(const std::string& playlistId, const TrackItem& track, std::optional<double> index) override {
|
|
120
125
|
auto __result = _swiftPart.addTrackToPlaylist(playlistId, std::forward<decltype(track)>(track), index);
|
|
121
126
|
if (__result.hasError()) [[unlikely]] {
|
|
122
127
|
std::rethrow_exception(__result.error());
|
|
123
128
|
}
|
|
129
|
+
auto __value = std::move(__result.value());
|
|
130
|
+
return __value;
|
|
124
131
|
}
|
|
125
|
-
inline void addTracksToPlaylist(const std::string& playlistId, const std::vector<TrackItem>& tracks, std::optional<double> index) override {
|
|
132
|
+
inline std::shared_ptr<Promise<void>> addTracksToPlaylist(const std::string& playlistId, const std::vector<TrackItem>& tracks, std::optional<double> index) override {
|
|
126
133
|
auto __result = _swiftPart.addTracksToPlaylist(playlistId, tracks, index);
|
|
127
134
|
if (__result.hasError()) [[unlikely]] {
|
|
128
135
|
std::rethrow_exception(__result.error());
|
|
129
136
|
}
|
|
137
|
+
auto __value = std::move(__result.value());
|
|
138
|
+
return __value;
|
|
130
139
|
}
|
|
131
|
-
inline void removeTrackFromPlaylist(const std::string& playlistId, const std::string& trackId) override {
|
|
140
|
+
inline std::shared_ptr<Promise<void>> removeTrackFromPlaylist(const std::string& playlistId, const std::string& trackId) override {
|
|
132
141
|
auto __result = _swiftPart.removeTrackFromPlaylist(playlistId, trackId);
|
|
133
142
|
if (__result.hasError()) [[unlikely]] {
|
|
134
143
|
std::rethrow_exception(__result.error());
|
|
135
144
|
}
|
|
145
|
+
auto __value = std::move(__result.value());
|
|
146
|
+
return __value;
|
|
136
147
|
}
|
|
137
|
-
inline void reorderTrackInPlaylist(const std::string& playlistId, const std::string& trackId, double newIndex) override {
|
|
148
|
+
inline std::shared_ptr<Promise<void>> reorderTrackInPlaylist(const std::string& playlistId, const std::string& trackId, double newIndex) override {
|
|
138
149
|
auto __result = _swiftPart.reorderTrackInPlaylist(playlistId, trackId, std::forward<decltype(newIndex)>(newIndex));
|
|
139
150
|
if (__result.hasError()) [[unlikely]] {
|
|
140
151
|
std::rethrow_exception(__result.error());
|
|
141
152
|
}
|
|
153
|
+
auto __value = std::move(__result.value());
|
|
154
|
+
return __value;
|
|
142
155
|
}
|
|
143
|
-
inline void loadPlaylist(const std::string& playlistId) override {
|
|
156
|
+
inline std::shared_ptr<Promise<void>> loadPlaylist(const std::string& playlistId) override {
|
|
144
157
|
auto __result = _swiftPart.loadPlaylist(playlistId);
|
|
145
158
|
if (__result.hasError()) [[unlikely]] {
|
|
146
159
|
std::rethrow_exception(__result.error());
|
|
147
160
|
}
|
|
161
|
+
auto __value = std::move(__result.value());
|
|
162
|
+
return __value;
|
|
148
163
|
}
|
|
149
164
|
inline std::variant<nitro::NullType, std::string> getCurrentPlaylistId() override {
|
|
150
165
|
auto __result = _swiftPart.getCurrentPlaylistId();
|
|
@@ -93,17 +93,21 @@ namespace margelo::nitro::nitroplayer {
|
|
|
93
93
|
|
|
94
94
|
public:
|
|
95
95
|
// Methods
|
|
96
|
-
inline void play() override {
|
|
96
|
+
inline std::shared_ptr<Promise<void>> play() override {
|
|
97
97
|
auto __result = _swiftPart.play();
|
|
98
98
|
if (__result.hasError()) [[unlikely]] {
|
|
99
99
|
std::rethrow_exception(__result.error());
|
|
100
100
|
}
|
|
101
|
+
auto __value = std::move(__result.value());
|
|
102
|
+
return __value;
|
|
101
103
|
}
|
|
102
|
-
inline void pause() override {
|
|
104
|
+
inline std::shared_ptr<Promise<void>> pause() override {
|
|
103
105
|
auto __result = _swiftPart.pause();
|
|
104
106
|
if (__result.hasError()) [[unlikely]] {
|
|
105
107
|
std::rethrow_exception(__result.error());
|
|
106
108
|
}
|
|
109
|
+
auto __value = std::move(__result.value());
|
|
110
|
+
return __value;
|
|
107
111
|
}
|
|
108
112
|
inline std::shared_ptr<Promise<void>> playSong(const std::string& songId, const std::optional<std::string>& fromPlaylist) override {
|
|
109
113
|
auto __result = _swiftPart.playSong(songId, fromPlaylist);
|
|
@@ -113,11 +117,13 @@ namespace margelo::nitro::nitroplayer {
|
|
|
113
117
|
auto __value = std::move(__result.value());
|
|
114
118
|
return __value;
|
|
115
119
|
}
|
|
116
|
-
inline void skipToNext() override {
|
|
120
|
+
inline std::shared_ptr<Promise<void>> skipToNext() override {
|
|
117
121
|
auto __result = _swiftPart.skipToNext();
|
|
118
122
|
if (__result.hasError()) [[unlikely]] {
|
|
119
123
|
std::rethrow_exception(__result.error());
|
|
120
124
|
}
|
|
125
|
+
auto __value = std::move(__result.value());
|
|
126
|
+
return __value;
|
|
121
127
|
}
|
|
122
128
|
inline std::shared_ptr<Promise<bool>> skipToIndex(double index) override {
|
|
123
129
|
auto __result = _swiftPart.skipToIndex(std::forward<decltype(index)>(index));
|
|
@@ -127,17 +133,21 @@ namespace margelo::nitro::nitroplayer {
|
|
|
127
133
|
auto __value = std::move(__result.value());
|
|
128
134
|
return __value;
|
|
129
135
|
}
|
|
130
|
-
inline void skipToPrevious() override {
|
|
136
|
+
inline std::shared_ptr<Promise<void>> skipToPrevious() override {
|
|
131
137
|
auto __result = _swiftPart.skipToPrevious();
|
|
132
138
|
if (__result.hasError()) [[unlikely]] {
|
|
133
139
|
std::rethrow_exception(__result.error());
|
|
134
140
|
}
|
|
141
|
+
auto __value = std::move(__result.value());
|
|
142
|
+
return __value;
|
|
135
143
|
}
|
|
136
|
-
inline void seek(double position) override {
|
|
144
|
+
inline std::shared_ptr<Promise<void>> seek(double position) override {
|
|
137
145
|
auto __result = _swiftPart.seek(std::forward<decltype(position)>(position));
|
|
138
146
|
if (__result.hasError()) [[unlikely]] {
|
|
139
147
|
std::rethrow_exception(__result.error());
|
|
140
148
|
}
|
|
149
|
+
auto __value = std::move(__result.value());
|
|
150
|
+
return __value;
|
|
141
151
|
}
|
|
142
152
|
inline std::shared_ptr<Promise<void>> addToUpNext(const std::string& trackId) override {
|
|
143
153
|
auto __result = _swiftPart.addToUpNext(trackId);
|
|
@@ -171,7 +181,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
171
181
|
auto __value = std::move(__result.value());
|
|
172
182
|
return __value;
|
|
173
183
|
}
|
|
174
|
-
inline
|
|
184
|
+
inline std::shared_ptr<Promise<void>> setRepeatMode(RepeatMode mode) override {
|
|
175
185
|
auto __result = _swiftPart.setRepeatMode(static_cast<int>(mode));
|
|
176
186
|
if (__result.hasError()) [[unlikely]] {
|
|
177
187
|
std::rethrow_exception(__result.error());
|
|
@@ -187,11 +197,13 @@ namespace margelo::nitro::nitroplayer {
|
|
|
187
197
|
auto __value = std::move(__result.value());
|
|
188
198
|
return __value;
|
|
189
199
|
}
|
|
190
|
-
inline void configure(const PlayerConfig& config) override {
|
|
200
|
+
inline std::shared_ptr<Promise<void>> configure(const PlayerConfig& config) override {
|
|
191
201
|
auto __result = _swiftPart.configure(std::forward<decltype(config)>(config));
|
|
192
202
|
if (__result.hasError()) [[unlikely]] {
|
|
193
203
|
std::rethrow_exception(__result.error());
|
|
194
204
|
}
|
|
205
|
+
auto __value = std::move(__result.value());
|
|
206
|
+
return __value;
|
|
195
207
|
}
|
|
196
208
|
inline void onChangeTrack(const std::function<void(const TrackItem& /* track */, std::optional<Reason> /* reason */)>& callback) override {
|
|
197
209
|
auto __result = _swiftPart.onChangeTrack(callback);
|
|
@@ -231,7 +243,7 @@ namespace margelo::nitro::nitroplayer {
|
|
|
231
243
|
auto __value = std::move(__result.value());
|
|
232
244
|
return __value;
|
|
233
245
|
}
|
|
234
|
-
inline
|
|
246
|
+
inline std::shared_ptr<Promise<void>> setVolume(double volume) override {
|
|
235
247
|
auto __result = _swiftPart.setVolume(std::forward<decltype(volume)>(volume));
|
|
236
248
|
if (__result.hasError()) [[unlikely]] {
|
|
237
249
|
std::rethrow_exception(__result.error());
|
|
@@ -301,6 +313,68 @@ namespace margelo::nitro::nitroplayer {
|
|
|
301
313
|
auto __value = std::move(__result.value());
|
|
302
314
|
return __value;
|
|
303
315
|
}
|
|
316
|
+
inline std::shared_ptr<Promise<bool>> removeFromPlayNext(const std::string& trackId) override {
|
|
317
|
+
auto __result = _swiftPart.removeFromPlayNext(trackId);
|
|
318
|
+
if (__result.hasError()) [[unlikely]] {
|
|
319
|
+
std::rethrow_exception(__result.error());
|
|
320
|
+
}
|
|
321
|
+
auto __value = std::move(__result.value());
|
|
322
|
+
return __value;
|
|
323
|
+
}
|
|
324
|
+
inline std::shared_ptr<Promise<bool>> removeFromUpNext(const std::string& trackId) override {
|
|
325
|
+
auto __result = _swiftPart.removeFromUpNext(trackId);
|
|
326
|
+
if (__result.hasError()) [[unlikely]] {
|
|
327
|
+
std::rethrow_exception(__result.error());
|
|
328
|
+
}
|
|
329
|
+
auto __value = std::move(__result.value());
|
|
330
|
+
return __value;
|
|
331
|
+
}
|
|
332
|
+
inline std::shared_ptr<Promise<void>> clearPlayNext() override {
|
|
333
|
+
auto __result = _swiftPart.clearPlayNext();
|
|
334
|
+
if (__result.hasError()) [[unlikely]] {
|
|
335
|
+
std::rethrow_exception(__result.error());
|
|
336
|
+
}
|
|
337
|
+
auto __value = std::move(__result.value());
|
|
338
|
+
return __value;
|
|
339
|
+
}
|
|
340
|
+
inline std::shared_ptr<Promise<void>> clearUpNext() override {
|
|
341
|
+
auto __result = _swiftPart.clearUpNext();
|
|
342
|
+
if (__result.hasError()) [[unlikely]] {
|
|
343
|
+
std::rethrow_exception(__result.error());
|
|
344
|
+
}
|
|
345
|
+
auto __value = std::move(__result.value());
|
|
346
|
+
return __value;
|
|
347
|
+
}
|
|
348
|
+
inline std::shared_ptr<Promise<bool>> reorderTemporaryTrack(const std::string& trackId, double newIndex) override {
|
|
349
|
+
auto __result = _swiftPart.reorderTemporaryTrack(trackId, std::forward<decltype(newIndex)>(newIndex));
|
|
350
|
+
if (__result.hasError()) [[unlikely]] {
|
|
351
|
+
std::rethrow_exception(__result.error());
|
|
352
|
+
}
|
|
353
|
+
auto __value = std::move(__result.value());
|
|
354
|
+
return __value;
|
|
355
|
+
}
|
|
356
|
+
inline std::shared_ptr<Promise<std::vector<TrackItem>>> getPlayNextQueue() override {
|
|
357
|
+
auto __result = _swiftPart.getPlayNextQueue();
|
|
358
|
+
if (__result.hasError()) [[unlikely]] {
|
|
359
|
+
std::rethrow_exception(__result.error());
|
|
360
|
+
}
|
|
361
|
+
auto __value = std::move(__result.value());
|
|
362
|
+
return __value;
|
|
363
|
+
}
|
|
364
|
+
inline std::shared_ptr<Promise<std::vector<TrackItem>>> getUpNextQueue() override {
|
|
365
|
+
auto __result = _swiftPart.getUpNextQueue();
|
|
366
|
+
if (__result.hasError()) [[unlikely]] {
|
|
367
|
+
std::rethrow_exception(__result.error());
|
|
368
|
+
}
|
|
369
|
+
auto __value = std::move(__result.value());
|
|
370
|
+
return __value;
|
|
371
|
+
}
|
|
372
|
+
inline void onTemporaryQueueChange(const std::function<void(const std::vector<TrackItem>& /* playNextQueue */, const std::vector<TrackItem>& /* upNextQueue */)>& callback) override {
|
|
373
|
+
auto __result = _swiftPart.onTemporaryQueueChange(callback);
|
|
374
|
+
if (__result.hasError()) [[unlikely]] {
|
|
375
|
+
std::rethrow_exception(__result.error());
|
|
376
|
+
}
|
|
377
|
+
}
|
|
304
378
|
|
|
305
379
|
private:
|
|
306
380
|
NitroPlayer::HybridTrackPlayerSpec_cxx _swiftPart;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// Func_void_EqualizerState.swift
|
|
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
|
+
import NitroModules
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Wraps a Swift `(_ value: EqualizerState) -> Void` as a class.
|
|
12
|
+
* This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
|
|
13
|
+
*/
|
|
14
|
+
public final class Func_void_EqualizerState {
|
|
15
|
+
public typealias bridge = margelo.nitro.nitroplayer.bridge.swift
|
|
16
|
+
|
|
17
|
+
private let closure: (_ value: EqualizerState) -> Void
|
|
18
|
+
|
|
19
|
+
public init(_ closure: @escaping (_ value: EqualizerState) -> Void) {
|
|
20
|
+
self.closure = closure
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@inline(__always)
|
|
24
|
+
public func call(value: EqualizerState) -> Void {
|
|
25
|
+
self.closure(value)
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Casts this instance to a retained unsafe raw pointer.
|
|
30
|
+
* This acquires one additional strong reference on the object!
|
|
31
|
+
*/
|
|
32
|
+
@inline(__always)
|
|
33
|
+
public func toUnsafe() -> UnsafeMutableRawPointer {
|
|
34
|
+
return Unmanaged.passRetained(self).toOpaque()
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Casts an unsafe pointer to a `Func_void_EqualizerState`.
|
|
39
|
+
* The pointer has to be a retained opaque `Unmanaged<Func_void_EqualizerState>`.
|
|
40
|
+
* This removes one strong reference from the object!
|
|
41
|
+
*/
|
|
42
|
+
@inline(__always)
|
|
43
|
+
public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_EqualizerState {
|
|
44
|
+
return Unmanaged<Func_void_EqualizerState>.fromOpaque(pointer).takeRetainedValue()
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// Func_void_std__variant_nitro__NullType__DownloadedPlaylist_.swift
|
|
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
|
+
import NitroModules
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Wraps a Swift `(_ value: Variant_NullType_DownloadedPlaylist) -> Void` as a class.
|
|
12
|
+
* This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
|
|
13
|
+
*/
|
|
14
|
+
public final class Func_void_std__variant_nitro__NullType__DownloadedPlaylist_ {
|
|
15
|
+
public typealias bridge = margelo.nitro.nitroplayer.bridge.swift
|
|
16
|
+
|
|
17
|
+
private let closure: (_ value: Variant_NullType_DownloadedPlaylist) -> Void
|
|
18
|
+
|
|
19
|
+
public init(_ closure: @escaping (_ value: Variant_NullType_DownloadedPlaylist) -> Void) {
|
|
20
|
+
self.closure = closure
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@inline(__always)
|
|
24
|
+
public func call(value: bridge.std__variant_nitro__NullType__DownloadedPlaylist_) -> Void {
|
|
25
|
+
self.closure({ () -> Variant_NullType_DownloadedPlaylist in
|
|
26
|
+
let __variant = value
|
|
27
|
+
switch __variant.index() {
|
|
28
|
+
case 0:
|
|
29
|
+
let __actual = __variant.get_0()
|
|
30
|
+
return .first(NullType.null)
|
|
31
|
+
case 1:
|
|
32
|
+
let __actual = __variant.get_1()
|
|
33
|
+
return .second(__actual)
|
|
34
|
+
default:
|
|
35
|
+
fatalError("Variant can never have index \(__variant.index())!")
|
|
36
|
+
}
|
|
37
|
+
}())
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Casts this instance to a retained unsafe raw pointer.
|
|
42
|
+
* This acquires one additional strong reference on the object!
|
|
43
|
+
*/
|
|
44
|
+
@inline(__always)
|
|
45
|
+
public func toUnsafe() -> UnsafeMutableRawPointer {
|
|
46
|
+
return Unmanaged.passRetained(self).toOpaque()
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Casts an unsafe pointer to a `Func_void_std__variant_nitro__NullType__DownloadedPlaylist_`.
|
|
51
|
+
* The pointer has to be a retained opaque `Unmanaged<Func_void_std__variant_nitro__NullType__DownloadedPlaylist_>`.
|
|
52
|
+
* This removes one strong reference from the object!
|
|
53
|
+
*/
|
|
54
|
+
@inline(__always)
|
|
55
|
+
public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_std__variant_nitro__NullType__DownloadedPlaylist_ {
|
|
56
|
+
return Unmanaged<Func_void_std__variant_nitro__NullType__DownloadedPlaylist_>.fromOpaque(pointer).takeRetainedValue()
|
|
57
|
+
}
|
|
58
|
+
}
|
package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__DownloadedTrack_.swift
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// Func_void_std__variant_nitro__NullType__DownloadedTrack_.swift
|
|
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
|
+
import NitroModules
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Wraps a Swift `(_ value: Variant_NullType_DownloadedTrack) -> Void` as a class.
|
|
12
|
+
* This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
|
|
13
|
+
*/
|
|
14
|
+
public final class Func_void_std__variant_nitro__NullType__DownloadedTrack_ {
|
|
15
|
+
public typealias bridge = margelo.nitro.nitroplayer.bridge.swift
|
|
16
|
+
|
|
17
|
+
private let closure: (_ value: Variant_NullType_DownloadedTrack) -> Void
|
|
18
|
+
|
|
19
|
+
public init(_ closure: @escaping (_ value: Variant_NullType_DownloadedTrack) -> Void) {
|
|
20
|
+
self.closure = closure
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@inline(__always)
|
|
24
|
+
public func call(value: bridge.std__variant_nitro__NullType__DownloadedTrack_) -> Void {
|
|
25
|
+
self.closure({ () -> Variant_NullType_DownloadedTrack in
|
|
26
|
+
let __variant = value
|
|
27
|
+
switch __variant.index() {
|
|
28
|
+
case 0:
|
|
29
|
+
let __actual = __variant.get_0()
|
|
30
|
+
return .first(NullType.null)
|
|
31
|
+
case 1:
|
|
32
|
+
let __actual = __variant.get_1()
|
|
33
|
+
return .second(__actual)
|
|
34
|
+
default:
|
|
35
|
+
fatalError("Variant can never have index \(__variant.index())!")
|
|
36
|
+
}
|
|
37
|
+
}())
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Casts this instance to a retained unsafe raw pointer.
|
|
42
|
+
* This acquires one additional strong reference on the object!
|
|
43
|
+
*/
|
|
44
|
+
@inline(__always)
|
|
45
|
+
public func toUnsafe() -> UnsafeMutableRawPointer {
|
|
46
|
+
return Unmanaged.passRetained(self).toOpaque()
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Casts an unsafe pointer to a `Func_void_std__variant_nitro__NullType__DownloadedTrack_`.
|
|
51
|
+
* The pointer has to be a retained opaque `Unmanaged<Func_void_std__variant_nitro__NullType__DownloadedTrack_>`.
|
|
52
|
+
* This removes one strong reference from the object!
|
|
53
|
+
*/
|
|
54
|
+
@inline(__always)
|
|
55
|
+
public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_std__variant_nitro__NullType__DownloadedTrack_ {
|
|
56
|
+
return Unmanaged<Func_void_std__variant_nitro__NullType__DownloadedTrack_>.fromOpaque(pointer).takeRetainedValue()
|
|
57
|
+
}
|
|
58
|
+
}
|
package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__std__string_.swift
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// Func_void_std__variant_nitro__NullType__std__string_.swift
|
|
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
|
+
import NitroModules
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Wraps a Swift `(_ value: Variant_NullType_String) -> Void` as a class.
|
|
12
|
+
* This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
|
|
13
|
+
*/
|
|
14
|
+
public final class Func_void_std__variant_nitro__NullType__std__string_ {
|
|
15
|
+
public typealias bridge = margelo.nitro.nitroplayer.bridge.swift
|
|
16
|
+
|
|
17
|
+
private let closure: (_ value: Variant_NullType_String) -> Void
|
|
18
|
+
|
|
19
|
+
public init(_ closure: @escaping (_ value: Variant_NullType_String) -> Void) {
|
|
20
|
+
self.closure = closure
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@inline(__always)
|
|
24
|
+
public func call(value: bridge.std__variant_nitro__NullType__std__string_) -> Void {
|
|
25
|
+
self.closure({ () -> Variant_NullType_String in
|
|
26
|
+
let __variant = value
|
|
27
|
+
switch __variant.index() {
|
|
28
|
+
case 0:
|
|
29
|
+
let __actual = __variant.get_0()
|
|
30
|
+
return .first(NullType.null)
|
|
31
|
+
case 1:
|
|
32
|
+
let __actual = __variant.get_1()
|
|
33
|
+
return .second(String(__actual))
|
|
34
|
+
default:
|
|
35
|
+
fatalError("Variant can never have index \(__variant.index())!")
|
|
36
|
+
}
|
|
37
|
+
}())
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Casts this instance to a retained unsafe raw pointer.
|
|
42
|
+
* This acquires one additional strong reference on the object!
|
|
43
|
+
*/
|
|
44
|
+
@inline(__always)
|
|
45
|
+
public func toUnsafe() -> UnsafeMutableRawPointer {
|
|
46
|
+
return Unmanaged.passRetained(self).toOpaque()
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Casts an unsafe pointer to a `Func_void_std__variant_nitro__NullType__std__string_`.
|
|
51
|
+
* The pointer has to be a retained opaque `Unmanaged<Func_void_std__variant_nitro__NullType__std__string_>`.
|
|
52
|
+
* This removes one strong reference from the object!
|
|
53
|
+
*/
|
|
54
|
+
@inline(__always)
|
|
55
|
+
public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_std__variant_nitro__NullType__std__string_ {
|
|
56
|
+
return Unmanaged<Func_void_std__variant_nitro__NullType__std__string_>.fromOpaque(pointer).takeRetainedValue()
|
|
57
|
+
}
|
|
58
|
+
}
|