asd
This commit is contained in:
48
Hublib/HublibFramework.xcframework/Info.plist
Normal file
48
Hublib/HublibFramework.xcframework/Info.plist
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>AvailableLibraries</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libhublib.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64_x86_64-simulator</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libhublib.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
<string>x86_64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
<key>SupportedPlatformVariant</key>
|
||||||
|
<string>simulator</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libhublib.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libhublib.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>XFWK</string>
|
||||||
|
<key>XCFrameworkFormatVersion</key>
|
||||||
|
<string>1.0</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
||||||
562
Hublib/HublibFramework.xcframework/ios-arm64/Headers/hublibFFI.h
Normal file
562
Hublib/HublibFramework.xcframework/ios-arm64/Headers/hublibFFI.h
Normal file
@@ -0,0 +1,562 @@
|
|||||||
|
// This file was autogenerated by some hot garbage in the `uniffi` crate.
|
||||||
|
// Trust me, you don't want to mess with it!
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
// The following structs are used to implement the lowest level
|
||||||
|
// of the FFI, and thus useful to multiple uniffied crates.
|
||||||
|
// We ensure they are declared exactly once, with a header guard, UNIFFI_SHARED_H.
|
||||||
|
#ifdef UNIFFI_SHARED_H
|
||||||
|
// We also try to prevent mixing versions of shared uniffi header structs.
|
||||||
|
// If you add anything to the #else block, you must increment the version suffix in UNIFFI_SHARED_HEADER_V4
|
||||||
|
#ifndef UNIFFI_SHARED_HEADER_V4
|
||||||
|
#error Combining helper code from multiple versions of uniffi is not supported
|
||||||
|
#endif // ndef UNIFFI_SHARED_HEADER_V4
|
||||||
|
#else
|
||||||
|
#define UNIFFI_SHARED_H
|
||||||
|
#define UNIFFI_SHARED_HEADER_V4
|
||||||
|
// ⚠️ Attention: If you change this #else block (ending in `#endif // def UNIFFI_SHARED_H`) you *must* ⚠️
|
||||||
|
// ⚠️ increment the version suffix in all instances of UNIFFI_SHARED_HEADER_V4 in this file. ⚠️
|
||||||
|
|
||||||
|
typedef struct RustBuffer
|
||||||
|
{
|
||||||
|
uint64_t capacity;
|
||||||
|
uint64_t len;
|
||||||
|
uint8_t *_Nullable data;
|
||||||
|
} RustBuffer;
|
||||||
|
|
||||||
|
typedef struct ForeignBytes
|
||||||
|
{
|
||||||
|
int32_t len;
|
||||||
|
const uint8_t *_Nullable data;
|
||||||
|
} ForeignBytes;
|
||||||
|
|
||||||
|
// Error definitions
|
||||||
|
typedef struct RustCallStatus {
|
||||||
|
int8_t code;
|
||||||
|
RustBuffer errorBuf;
|
||||||
|
} RustCallStatus;
|
||||||
|
|
||||||
|
// ⚠️ Attention: If you change this #else block (ending in `#endif // def UNIFFI_SHARED_H`) you *must* ⚠️
|
||||||
|
// ⚠️ increment the version suffix in all instances of UNIFFI_SHARED_HEADER_V4 in this file. ⚠️
|
||||||
|
#endif // def UNIFFI_SHARED_H
|
||||||
|
#ifndef UNIFFI_FFIDEF_RUST_FUTURE_CONTINUATION_CALLBACK
|
||||||
|
#define UNIFFI_FFIDEF_RUST_FUTURE_CONTINUATION_CALLBACK
|
||||||
|
typedef void (*UniffiRustFutureContinuationCallback)(uint64_t, int8_t
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_FREE
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_FREE
|
||||||
|
typedef void (*UniffiForeignFutureFree)(uint64_t
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_CALLBACK_INTERFACE_FREE
|
||||||
|
#define UNIFFI_FFIDEF_CALLBACK_INTERFACE_FREE
|
||||||
|
typedef void (*UniffiCallbackInterfaceFree)(uint64_t
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE
|
||||||
|
typedef struct UniffiForeignFuture {
|
||||||
|
uint64_t handle;
|
||||||
|
UniffiForeignFutureFree _Nonnull free;
|
||||||
|
} UniffiForeignFuture;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U8
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U8
|
||||||
|
typedef struct UniffiForeignFutureStructU8 {
|
||||||
|
uint8_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructU8;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U8
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U8
|
||||||
|
typedef void (*UniffiForeignFutureCompleteU8)(uint64_t, UniffiForeignFutureStructU8
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I8
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I8
|
||||||
|
typedef struct UniffiForeignFutureStructI8 {
|
||||||
|
int8_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructI8;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I8
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I8
|
||||||
|
typedef void (*UniffiForeignFutureCompleteI8)(uint64_t, UniffiForeignFutureStructI8
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U16
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U16
|
||||||
|
typedef struct UniffiForeignFutureStructU16 {
|
||||||
|
uint16_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructU16;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U16
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U16
|
||||||
|
typedef void (*UniffiForeignFutureCompleteU16)(uint64_t, UniffiForeignFutureStructU16
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I16
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I16
|
||||||
|
typedef struct UniffiForeignFutureStructI16 {
|
||||||
|
int16_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructI16;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I16
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I16
|
||||||
|
typedef void (*UniffiForeignFutureCompleteI16)(uint64_t, UniffiForeignFutureStructI16
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U32
|
||||||
|
typedef struct UniffiForeignFutureStructU32 {
|
||||||
|
uint32_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructU32;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U32
|
||||||
|
typedef void (*UniffiForeignFutureCompleteU32)(uint64_t, UniffiForeignFutureStructU32
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I32
|
||||||
|
typedef struct UniffiForeignFutureStructI32 {
|
||||||
|
int32_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructI32;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I32
|
||||||
|
typedef void (*UniffiForeignFutureCompleteI32)(uint64_t, UniffiForeignFutureStructI32
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U64
|
||||||
|
typedef struct UniffiForeignFutureStructU64 {
|
||||||
|
uint64_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructU64;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U64
|
||||||
|
typedef void (*UniffiForeignFutureCompleteU64)(uint64_t, UniffiForeignFutureStructU64
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I64
|
||||||
|
typedef struct UniffiForeignFutureStructI64 {
|
||||||
|
int64_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructI64;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I64
|
||||||
|
typedef void (*UniffiForeignFutureCompleteI64)(uint64_t, UniffiForeignFutureStructI64
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_F32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_F32
|
||||||
|
typedef struct UniffiForeignFutureStructF32 {
|
||||||
|
float returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructF32;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_F32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_F32
|
||||||
|
typedef void (*UniffiForeignFutureCompleteF32)(uint64_t, UniffiForeignFutureStructF32
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_F64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_F64
|
||||||
|
typedef struct UniffiForeignFutureStructF64 {
|
||||||
|
double returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructF64;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_F64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_F64
|
||||||
|
typedef void (*UniffiForeignFutureCompleteF64)(uint64_t, UniffiForeignFutureStructF64
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_POINTER
|
||||||
|
typedef struct UniffiForeignFutureStructPointer {
|
||||||
|
void*_Nonnull returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructPointer;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_POINTER
|
||||||
|
typedef void (*UniffiForeignFutureCompletePointer)(uint64_t, UniffiForeignFutureStructPointer
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_RUST_BUFFER
|
||||||
|
typedef struct UniffiForeignFutureStructRustBuffer {
|
||||||
|
RustBuffer returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructRustBuffer;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_RUST_BUFFER
|
||||||
|
typedef void (*UniffiForeignFutureCompleteRustBuffer)(uint64_t, UniffiForeignFutureStructRustBuffer
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_VOID
|
||||||
|
typedef struct UniffiForeignFutureStructVoid {
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructVoid;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_VOID
|
||||||
|
typedef void (*UniffiForeignFutureCompleteVoid)(uint64_t, UniffiForeignFutureStructVoid
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_UNIFFI_HUBLIB_FN_FUNC_GET_SECRET_VALUE
|
||||||
|
#define UNIFFI_FFIDEF_UNIFFI_HUBLIB_FN_FUNC_GET_SECRET_VALUE
|
||||||
|
RustBuffer uniffi_hublib_fn_func_get_secret_value(uint64_t given_time, RustBuffer user_agent, RustBuffer url, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_UNIFFI_HUBLIB_FN_FUNC_RECREATE_SECRET_VALUE
|
||||||
|
#define UNIFFI_FFIDEF_UNIFFI_HUBLIB_FN_FUNC_RECREATE_SECRET_VALUE
|
||||||
|
RustBuffer uniffi_hublib_fn_func_recreate_secret_value(uint64_t given_time, RustBuffer user_agent, RustBuffer url, RustBuffer gotten_value, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_ALLOC
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_ALLOC
|
||||||
|
RustBuffer ffi_hublib_rustbuffer_alloc(uint64_t size, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_FROM_BYTES
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_FROM_BYTES
|
||||||
|
RustBuffer ffi_hublib_rustbuffer_from_bytes(ForeignBytes bytes, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_FREE
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_FREE
|
||||||
|
void ffi_hublib_rustbuffer_free(RustBuffer buf, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_RESERVE
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_RESERVE
|
||||||
|
RustBuffer ffi_hublib_rustbuffer_reserve(RustBuffer buf, uint64_t additional, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U8
|
||||||
|
void ffi_hublib_rust_future_poll_u8(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U8
|
||||||
|
void ffi_hublib_rust_future_cancel_u8(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U8
|
||||||
|
void ffi_hublib_rust_future_free_u8(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U8
|
||||||
|
uint8_t ffi_hublib_rust_future_complete_u8(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I8
|
||||||
|
void ffi_hublib_rust_future_poll_i8(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I8
|
||||||
|
void ffi_hublib_rust_future_cancel_i8(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I8
|
||||||
|
void ffi_hublib_rust_future_free_i8(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I8
|
||||||
|
int8_t ffi_hublib_rust_future_complete_i8(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U16
|
||||||
|
void ffi_hublib_rust_future_poll_u16(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U16
|
||||||
|
void ffi_hublib_rust_future_cancel_u16(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U16
|
||||||
|
void ffi_hublib_rust_future_free_u16(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U16
|
||||||
|
uint16_t ffi_hublib_rust_future_complete_u16(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I16
|
||||||
|
void ffi_hublib_rust_future_poll_i16(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I16
|
||||||
|
void ffi_hublib_rust_future_cancel_i16(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I16
|
||||||
|
void ffi_hublib_rust_future_free_i16(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I16
|
||||||
|
int16_t ffi_hublib_rust_future_complete_i16(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U32
|
||||||
|
void ffi_hublib_rust_future_poll_u32(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U32
|
||||||
|
void ffi_hublib_rust_future_cancel_u32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U32
|
||||||
|
void ffi_hublib_rust_future_free_u32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U32
|
||||||
|
uint32_t ffi_hublib_rust_future_complete_u32(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I32
|
||||||
|
void ffi_hublib_rust_future_poll_i32(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I32
|
||||||
|
void ffi_hublib_rust_future_cancel_i32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I32
|
||||||
|
void ffi_hublib_rust_future_free_i32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I32
|
||||||
|
int32_t ffi_hublib_rust_future_complete_i32(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U64
|
||||||
|
void ffi_hublib_rust_future_poll_u64(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U64
|
||||||
|
void ffi_hublib_rust_future_cancel_u64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U64
|
||||||
|
void ffi_hublib_rust_future_free_u64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U64
|
||||||
|
uint64_t ffi_hublib_rust_future_complete_u64(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I64
|
||||||
|
void ffi_hublib_rust_future_poll_i64(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I64
|
||||||
|
void ffi_hublib_rust_future_cancel_i64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I64
|
||||||
|
void ffi_hublib_rust_future_free_i64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I64
|
||||||
|
int64_t ffi_hublib_rust_future_complete_i64(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_F32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_F32
|
||||||
|
void ffi_hublib_rust_future_poll_f32(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_F32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_F32
|
||||||
|
void ffi_hublib_rust_future_cancel_f32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_F32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_F32
|
||||||
|
void ffi_hublib_rust_future_free_f32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_F32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_F32
|
||||||
|
float ffi_hublib_rust_future_complete_f32(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_F64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_F64
|
||||||
|
void ffi_hublib_rust_future_poll_f64(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_F64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_F64
|
||||||
|
void ffi_hublib_rust_future_cancel_f64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_F64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_F64
|
||||||
|
void ffi_hublib_rust_future_free_f64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_F64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_F64
|
||||||
|
double ffi_hublib_rust_future_complete_f64(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_POINTER
|
||||||
|
void ffi_hublib_rust_future_poll_pointer(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_POINTER
|
||||||
|
void ffi_hublib_rust_future_cancel_pointer(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_POINTER
|
||||||
|
void ffi_hublib_rust_future_free_pointer(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_POINTER
|
||||||
|
void*_Nonnull ffi_hublib_rust_future_complete_pointer(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_RUST_BUFFER
|
||||||
|
void ffi_hublib_rust_future_poll_rust_buffer(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_RUST_BUFFER
|
||||||
|
void ffi_hublib_rust_future_cancel_rust_buffer(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_RUST_BUFFER
|
||||||
|
void ffi_hublib_rust_future_free_rust_buffer(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_RUST_BUFFER
|
||||||
|
RustBuffer ffi_hublib_rust_future_complete_rust_buffer(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_VOID
|
||||||
|
void ffi_hublib_rust_future_poll_void(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_VOID
|
||||||
|
void ffi_hublib_rust_future_cancel_void(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_VOID
|
||||||
|
void ffi_hublib_rust_future_free_void(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_VOID
|
||||||
|
void ffi_hublib_rust_future_complete_void(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_UNIFFI_HUBLIB_CHECKSUM_FUNC_GET_SECRET_VALUE
|
||||||
|
#define UNIFFI_FFIDEF_UNIFFI_HUBLIB_CHECKSUM_FUNC_GET_SECRET_VALUE
|
||||||
|
uint16_t uniffi_hublib_checksum_func_get_secret_value(void
|
||||||
|
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_UNIFFI_HUBLIB_CHECKSUM_FUNC_RECREATE_SECRET_VALUE
|
||||||
|
#define UNIFFI_FFIDEF_UNIFFI_HUBLIB_CHECKSUM_FUNC_RECREATE_SECRET_VALUE
|
||||||
|
uint16_t uniffi_hublib_checksum_func_recreate_secret_value(void
|
||||||
|
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_UNIFFI_CONTRACT_VERSION
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_UNIFFI_CONTRACT_VERSION
|
||||||
|
uint32_t ffi_hublib_uniffi_contract_version(void
|
||||||
|
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
// This file was autogenerated by some hot garbage in the `uniffi` crate.
|
||||||
|
// Trust me, you don't want to mess with it!
|
||||||
|
module hublibFFI {
|
||||||
|
header "hublibFFI.h"
|
||||||
|
export *
|
||||||
|
}
|
||||||
BIN
Hublib/HublibFramework.xcframework/ios-arm64/libhublib.a
Normal file
BIN
Hublib/HublibFramework.xcframework/ios-arm64/libhublib.a
Normal file
Binary file not shown.
@@ -0,0 +1,562 @@
|
|||||||
|
// This file was autogenerated by some hot garbage in the `uniffi` crate.
|
||||||
|
// Trust me, you don't want to mess with it!
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
// The following structs are used to implement the lowest level
|
||||||
|
// of the FFI, and thus useful to multiple uniffied crates.
|
||||||
|
// We ensure they are declared exactly once, with a header guard, UNIFFI_SHARED_H.
|
||||||
|
#ifdef UNIFFI_SHARED_H
|
||||||
|
// We also try to prevent mixing versions of shared uniffi header structs.
|
||||||
|
// If you add anything to the #else block, you must increment the version suffix in UNIFFI_SHARED_HEADER_V4
|
||||||
|
#ifndef UNIFFI_SHARED_HEADER_V4
|
||||||
|
#error Combining helper code from multiple versions of uniffi is not supported
|
||||||
|
#endif // ndef UNIFFI_SHARED_HEADER_V4
|
||||||
|
#else
|
||||||
|
#define UNIFFI_SHARED_H
|
||||||
|
#define UNIFFI_SHARED_HEADER_V4
|
||||||
|
// ⚠️ Attention: If you change this #else block (ending in `#endif // def UNIFFI_SHARED_H`) you *must* ⚠️
|
||||||
|
// ⚠️ increment the version suffix in all instances of UNIFFI_SHARED_HEADER_V4 in this file. ⚠️
|
||||||
|
|
||||||
|
typedef struct RustBuffer
|
||||||
|
{
|
||||||
|
uint64_t capacity;
|
||||||
|
uint64_t len;
|
||||||
|
uint8_t *_Nullable data;
|
||||||
|
} RustBuffer;
|
||||||
|
|
||||||
|
typedef struct ForeignBytes
|
||||||
|
{
|
||||||
|
int32_t len;
|
||||||
|
const uint8_t *_Nullable data;
|
||||||
|
} ForeignBytes;
|
||||||
|
|
||||||
|
// Error definitions
|
||||||
|
typedef struct RustCallStatus {
|
||||||
|
int8_t code;
|
||||||
|
RustBuffer errorBuf;
|
||||||
|
} RustCallStatus;
|
||||||
|
|
||||||
|
// ⚠️ Attention: If you change this #else block (ending in `#endif // def UNIFFI_SHARED_H`) you *must* ⚠️
|
||||||
|
// ⚠️ increment the version suffix in all instances of UNIFFI_SHARED_HEADER_V4 in this file. ⚠️
|
||||||
|
#endif // def UNIFFI_SHARED_H
|
||||||
|
#ifndef UNIFFI_FFIDEF_RUST_FUTURE_CONTINUATION_CALLBACK
|
||||||
|
#define UNIFFI_FFIDEF_RUST_FUTURE_CONTINUATION_CALLBACK
|
||||||
|
typedef void (*UniffiRustFutureContinuationCallback)(uint64_t, int8_t
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_FREE
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_FREE
|
||||||
|
typedef void (*UniffiForeignFutureFree)(uint64_t
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_CALLBACK_INTERFACE_FREE
|
||||||
|
#define UNIFFI_FFIDEF_CALLBACK_INTERFACE_FREE
|
||||||
|
typedef void (*UniffiCallbackInterfaceFree)(uint64_t
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE
|
||||||
|
typedef struct UniffiForeignFuture {
|
||||||
|
uint64_t handle;
|
||||||
|
UniffiForeignFutureFree _Nonnull free;
|
||||||
|
} UniffiForeignFuture;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U8
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U8
|
||||||
|
typedef struct UniffiForeignFutureStructU8 {
|
||||||
|
uint8_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructU8;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U8
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U8
|
||||||
|
typedef void (*UniffiForeignFutureCompleteU8)(uint64_t, UniffiForeignFutureStructU8
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I8
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I8
|
||||||
|
typedef struct UniffiForeignFutureStructI8 {
|
||||||
|
int8_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructI8;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I8
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I8
|
||||||
|
typedef void (*UniffiForeignFutureCompleteI8)(uint64_t, UniffiForeignFutureStructI8
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U16
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U16
|
||||||
|
typedef struct UniffiForeignFutureStructU16 {
|
||||||
|
uint16_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructU16;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U16
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U16
|
||||||
|
typedef void (*UniffiForeignFutureCompleteU16)(uint64_t, UniffiForeignFutureStructU16
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I16
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I16
|
||||||
|
typedef struct UniffiForeignFutureStructI16 {
|
||||||
|
int16_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructI16;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I16
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I16
|
||||||
|
typedef void (*UniffiForeignFutureCompleteI16)(uint64_t, UniffiForeignFutureStructI16
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U32
|
||||||
|
typedef struct UniffiForeignFutureStructU32 {
|
||||||
|
uint32_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructU32;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U32
|
||||||
|
typedef void (*UniffiForeignFutureCompleteU32)(uint64_t, UniffiForeignFutureStructU32
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I32
|
||||||
|
typedef struct UniffiForeignFutureStructI32 {
|
||||||
|
int32_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructI32;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I32
|
||||||
|
typedef void (*UniffiForeignFutureCompleteI32)(uint64_t, UniffiForeignFutureStructI32
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_U64
|
||||||
|
typedef struct UniffiForeignFutureStructU64 {
|
||||||
|
uint64_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructU64;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_U64
|
||||||
|
typedef void (*UniffiForeignFutureCompleteU64)(uint64_t, UniffiForeignFutureStructU64
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_I64
|
||||||
|
typedef struct UniffiForeignFutureStructI64 {
|
||||||
|
int64_t returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructI64;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_I64
|
||||||
|
typedef void (*UniffiForeignFutureCompleteI64)(uint64_t, UniffiForeignFutureStructI64
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_F32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_F32
|
||||||
|
typedef struct UniffiForeignFutureStructF32 {
|
||||||
|
float returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructF32;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_F32
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_F32
|
||||||
|
typedef void (*UniffiForeignFutureCompleteF32)(uint64_t, UniffiForeignFutureStructF32
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_F64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_F64
|
||||||
|
typedef struct UniffiForeignFutureStructF64 {
|
||||||
|
double returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructF64;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_F64
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_F64
|
||||||
|
typedef void (*UniffiForeignFutureCompleteF64)(uint64_t, UniffiForeignFutureStructF64
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_POINTER
|
||||||
|
typedef struct UniffiForeignFutureStructPointer {
|
||||||
|
void*_Nonnull returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructPointer;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_POINTER
|
||||||
|
typedef void (*UniffiForeignFutureCompletePointer)(uint64_t, UniffiForeignFutureStructPointer
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_RUST_BUFFER
|
||||||
|
typedef struct UniffiForeignFutureStructRustBuffer {
|
||||||
|
RustBuffer returnValue;
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructRustBuffer;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_RUST_BUFFER
|
||||||
|
typedef void (*UniffiForeignFutureCompleteRustBuffer)(uint64_t, UniffiForeignFutureStructRustBuffer
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_STRUCT_VOID
|
||||||
|
typedef struct UniffiForeignFutureStructVoid {
|
||||||
|
RustCallStatus callStatus;
|
||||||
|
} UniffiForeignFutureStructVoid;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FOREIGN_FUTURE_COMPLETE_VOID
|
||||||
|
typedef void (*UniffiForeignFutureCompleteVoid)(uint64_t, UniffiForeignFutureStructVoid
|
||||||
|
);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_UNIFFI_HUBLIB_FN_FUNC_GET_SECRET_VALUE
|
||||||
|
#define UNIFFI_FFIDEF_UNIFFI_HUBLIB_FN_FUNC_GET_SECRET_VALUE
|
||||||
|
RustBuffer uniffi_hublib_fn_func_get_secret_value(uint64_t given_time, RustBuffer user_agent, RustBuffer url, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_UNIFFI_HUBLIB_FN_FUNC_RECREATE_SECRET_VALUE
|
||||||
|
#define UNIFFI_FFIDEF_UNIFFI_HUBLIB_FN_FUNC_RECREATE_SECRET_VALUE
|
||||||
|
RustBuffer uniffi_hublib_fn_func_recreate_secret_value(uint64_t given_time, RustBuffer user_agent, RustBuffer url, RustBuffer gotten_value, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_ALLOC
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_ALLOC
|
||||||
|
RustBuffer ffi_hublib_rustbuffer_alloc(uint64_t size, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_FROM_BYTES
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_FROM_BYTES
|
||||||
|
RustBuffer ffi_hublib_rustbuffer_from_bytes(ForeignBytes bytes, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_FREE
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_FREE
|
||||||
|
void ffi_hublib_rustbuffer_free(RustBuffer buf, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_RESERVE
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUSTBUFFER_RESERVE
|
||||||
|
RustBuffer ffi_hublib_rustbuffer_reserve(RustBuffer buf, uint64_t additional, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U8
|
||||||
|
void ffi_hublib_rust_future_poll_u8(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U8
|
||||||
|
void ffi_hublib_rust_future_cancel_u8(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U8
|
||||||
|
void ffi_hublib_rust_future_free_u8(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U8
|
||||||
|
uint8_t ffi_hublib_rust_future_complete_u8(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I8
|
||||||
|
void ffi_hublib_rust_future_poll_i8(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I8
|
||||||
|
void ffi_hublib_rust_future_cancel_i8(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I8
|
||||||
|
void ffi_hublib_rust_future_free_i8(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I8
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I8
|
||||||
|
int8_t ffi_hublib_rust_future_complete_i8(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U16
|
||||||
|
void ffi_hublib_rust_future_poll_u16(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U16
|
||||||
|
void ffi_hublib_rust_future_cancel_u16(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U16
|
||||||
|
void ffi_hublib_rust_future_free_u16(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U16
|
||||||
|
uint16_t ffi_hublib_rust_future_complete_u16(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I16
|
||||||
|
void ffi_hublib_rust_future_poll_i16(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I16
|
||||||
|
void ffi_hublib_rust_future_cancel_i16(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I16
|
||||||
|
void ffi_hublib_rust_future_free_i16(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I16
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I16
|
||||||
|
int16_t ffi_hublib_rust_future_complete_i16(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U32
|
||||||
|
void ffi_hublib_rust_future_poll_u32(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U32
|
||||||
|
void ffi_hublib_rust_future_cancel_u32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U32
|
||||||
|
void ffi_hublib_rust_future_free_u32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U32
|
||||||
|
uint32_t ffi_hublib_rust_future_complete_u32(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I32
|
||||||
|
void ffi_hublib_rust_future_poll_i32(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I32
|
||||||
|
void ffi_hublib_rust_future_cancel_i32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I32
|
||||||
|
void ffi_hublib_rust_future_free_i32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I32
|
||||||
|
int32_t ffi_hublib_rust_future_complete_i32(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_U64
|
||||||
|
void ffi_hublib_rust_future_poll_u64(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_U64
|
||||||
|
void ffi_hublib_rust_future_cancel_u64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_U64
|
||||||
|
void ffi_hublib_rust_future_free_u64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_U64
|
||||||
|
uint64_t ffi_hublib_rust_future_complete_u64(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_I64
|
||||||
|
void ffi_hublib_rust_future_poll_i64(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_I64
|
||||||
|
void ffi_hublib_rust_future_cancel_i64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_I64
|
||||||
|
void ffi_hublib_rust_future_free_i64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_I64
|
||||||
|
int64_t ffi_hublib_rust_future_complete_i64(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_F32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_F32
|
||||||
|
void ffi_hublib_rust_future_poll_f32(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_F32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_F32
|
||||||
|
void ffi_hublib_rust_future_cancel_f32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_F32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_F32
|
||||||
|
void ffi_hublib_rust_future_free_f32(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_F32
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_F32
|
||||||
|
float ffi_hublib_rust_future_complete_f32(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_F64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_F64
|
||||||
|
void ffi_hublib_rust_future_poll_f64(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_F64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_F64
|
||||||
|
void ffi_hublib_rust_future_cancel_f64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_F64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_F64
|
||||||
|
void ffi_hublib_rust_future_free_f64(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_F64
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_F64
|
||||||
|
double ffi_hublib_rust_future_complete_f64(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_POINTER
|
||||||
|
void ffi_hublib_rust_future_poll_pointer(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_POINTER
|
||||||
|
void ffi_hublib_rust_future_cancel_pointer(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_POINTER
|
||||||
|
void ffi_hublib_rust_future_free_pointer(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_POINTER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_POINTER
|
||||||
|
void*_Nonnull ffi_hublib_rust_future_complete_pointer(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_RUST_BUFFER
|
||||||
|
void ffi_hublib_rust_future_poll_rust_buffer(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_RUST_BUFFER
|
||||||
|
void ffi_hublib_rust_future_cancel_rust_buffer(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_RUST_BUFFER
|
||||||
|
void ffi_hublib_rust_future_free_rust_buffer(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_RUST_BUFFER
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_RUST_BUFFER
|
||||||
|
RustBuffer ffi_hublib_rust_future_complete_rust_buffer(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_POLL_VOID
|
||||||
|
void ffi_hublib_rust_future_poll_void(uint64_t handle, UniffiRustFutureContinuationCallback _Nonnull callback, uint64_t callback_data
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_CANCEL_VOID
|
||||||
|
void ffi_hublib_rust_future_cancel_void(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_FREE_VOID
|
||||||
|
void ffi_hublib_rust_future_free_void(uint64_t handle
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_VOID
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_RUST_FUTURE_COMPLETE_VOID
|
||||||
|
void ffi_hublib_rust_future_complete_void(uint64_t handle, RustCallStatus *_Nonnull out_status
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_UNIFFI_HUBLIB_CHECKSUM_FUNC_GET_SECRET_VALUE
|
||||||
|
#define UNIFFI_FFIDEF_UNIFFI_HUBLIB_CHECKSUM_FUNC_GET_SECRET_VALUE
|
||||||
|
uint16_t uniffi_hublib_checksum_func_get_secret_value(void
|
||||||
|
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_UNIFFI_HUBLIB_CHECKSUM_FUNC_RECREATE_SECRET_VALUE
|
||||||
|
#define UNIFFI_FFIDEF_UNIFFI_HUBLIB_CHECKSUM_FUNC_RECREATE_SECRET_VALUE
|
||||||
|
uint16_t uniffi_hublib_checksum_func_recreate_secret_value(void
|
||||||
|
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
#ifndef UNIFFI_FFIDEF_FFI_HUBLIB_UNIFFI_CONTRACT_VERSION
|
||||||
|
#define UNIFFI_FFIDEF_FFI_HUBLIB_UNIFFI_CONTRACT_VERSION
|
||||||
|
uint32_t ffi_hublib_uniffi_contract_version(void
|
||||||
|
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
// This file was autogenerated by some hot garbage in the `uniffi` crate.
|
||||||
|
// Trust me, you don't want to mess with it!
|
||||||
|
module hublibFFI {
|
||||||
|
header "hublibFFI.h"
|
||||||
|
export *
|
||||||
|
}
|
||||||
Binary file not shown.
29
Hublib/Package.swift
Normal file
29
Hublib/Package.swift
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
// swift-tools-version:5.5
|
||||||
|
// The swift-tools-version declares the minimum version of Swift required to build this package.
|
||||||
|
// Swift Package: Hublib
|
||||||
|
|
||||||
|
import PackageDescription;
|
||||||
|
|
||||||
|
let package = Package(
|
||||||
|
name: "Hublib",
|
||||||
|
platforms: [
|
||||||
|
.iOS(.v13),
|
||||||
|
.macOS(.v10_15)
|
||||||
|
],
|
||||||
|
products: [
|
||||||
|
.library(
|
||||||
|
name: "Hublib",
|
||||||
|
targets: ["Hublib"]
|
||||||
|
)
|
||||||
|
],
|
||||||
|
dependencies: [ ],
|
||||||
|
targets: [
|
||||||
|
.binaryTarget(name: "HublibFramework", path: "./HublibFramework.xcframework"),
|
||||||
|
.target(
|
||||||
|
name: "Hublib",
|
||||||
|
dependencies: [
|
||||||
|
.target(name: "HublibFramework")
|
||||||
|
]
|
||||||
|
),
|
||||||
|
]
|
||||||
|
)
|
||||||
493
Hublib/Sources/Hublib/hublib.swift
Normal file
493
Hublib/Sources/Hublib/hublib.swift
Normal file
@@ -0,0 +1,493 @@
|
|||||||
|
// This file was autogenerated by some hot garbage in the `uniffi` crate.
|
||||||
|
// Trust me, you don't want to mess with it!
|
||||||
|
|
||||||
|
// swiftlint:disable all
|
||||||
|
import Foundation
|
||||||
|
|
||||||
|
// Depending on the consumer's build setup, the low-level FFI code
|
||||||
|
// might be in a separate module, or it might be compiled inline into
|
||||||
|
// this module. This is a bit of light hackery to work with both.
|
||||||
|
#if canImport(hublibFFI)
|
||||||
|
import hublibFFI
|
||||||
|
#endif
|
||||||
|
|
||||||
|
fileprivate extension RustBuffer {
|
||||||
|
// Allocate a new buffer, copying the contents of a `UInt8` array.
|
||||||
|
init(bytes: [UInt8]) {
|
||||||
|
let rbuf = bytes.withUnsafeBufferPointer { ptr in
|
||||||
|
RustBuffer.from(ptr)
|
||||||
|
}
|
||||||
|
self.init(capacity: rbuf.capacity, len: rbuf.len, data: rbuf.data)
|
||||||
|
}
|
||||||
|
|
||||||
|
static func empty() -> RustBuffer {
|
||||||
|
RustBuffer(capacity: 0, len:0, data: nil)
|
||||||
|
}
|
||||||
|
|
||||||
|
static func from(_ ptr: UnsafeBufferPointer<UInt8>) -> RustBuffer {
|
||||||
|
try! rustCall { ffi_hublib_rustbuffer_from_bytes(ForeignBytes(bufferPointer: ptr), $0) }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Frees the buffer in place.
|
||||||
|
// The buffer must not be used after this is called.
|
||||||
|
func deallocate() {
|
||||||
|
try! rustCall { ffi_hublib_rustbuffer_free(self, $0) }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fileprivate extension ForeignBytes {
|
||||||
|
init(bufferPointer: UnsafeBufferPointer<UInt8>) {
|
||||||
|
self.init(len: Int32(bufferPointer.count), data: bufferPointer.baseAddress)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// For every type used in the interface, we provide helper methods for conveniently
|
||||||
|
// lifting and lowering that type from C-compatible data, and for reading and writing
|
||||||
|
// values of that type in a buffer.
|
||||||
|
|
||||||
|
// Helper classes/extensions that don't change.
|
||||||
|
// Someday, this will be in a library of its own.
|
||||||
|
|
||||||
|
fileprivate extension Data {
|
||||||
|
init(rustBuffer: RustBuffer) {
|
||||||
|
self.init(
|
||||||
|
bytesNoCopy: rustBuffer.data!,
|
||||||
|
count: Int(rustBuffer.len),
|
||||||
|
deallocator: .none
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Define reader functionality. Normally this would be defined in a class or
|
||||||
|
// struct, but we use standalone functions instead in order to make external
|
||||||
|
// types work.
|
||||||
|
//
|
||||||
|
// With external types, one swift source file needs to be able to call the read
|
||||||
|
// method on another source file's FfiConverter, but then what visibility
|
||||||
|
// should Reader have?
|
||||||
|
// - If Reader is fileprivate, then this means the read() must also
|
||||||
|
// be fileprivate, which doesn't work with external types.
|
||||||
|
// - If Reader is internal/public, we'll get compile errors since both source
|
||||||
|
// files will try define the same type.
|
||||||
|
//
|
||||||
|
// Instead, the read() method and these helper functions input a tuple of data
|
||||||
|
|
||||||
|
fileprivate func createReader(data: Data) -> (data: Data, offset: Data.Index) {
|
||||||
|
(data: data, offset: 0)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reads an integer at the current offset, in big-endian order, and advances
|
||||||
|
// the offset on success. Throws if reading the integer would move the
|
||||||
|
// offset past the end of the buffer.
|
||||||
|
fileprivate func readInt<T: FixedWidthInteger>(_ reader: inout (data: Data, offset: Data.Index)) throws -> T {
|
||||||
|
let range = reader.offset..<reader.offset + MemoryLayout<T>.size
|
||||||
|
guard reader.data.count >= range.upperBound else {
|
||||||
|
throw UniffiInternalError.bufferOverflow
|
||||||
|
}
|
||||||
|
if T.self == UInt8.self {
|
||||||
|
let value = reader.data[reader.offset]
|
||||||
|
reader.offset += 1
|
||||||
|
return value as! T
|
||||||
|
}
|
||||||
|
var value: T = 0
|
||||||
|
let _ = withUnsafeMutableBytes(of: &value, { reader.data.copyBytes(to: $0, from: range)})
|
||||||
|
reader.offset = range.upperBound
|
||||||
|
return value.bigEndian
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reads an arbitrary number of bytes, to be used to read
|
||||||
|
// raw bytes, this is useful when lifting strings
|
||||||
|
fileprivate func readBytes(_ reader: inout (data: Data, offset: Data.Index), count: Int) throws -> Array<UInt8> {
|
||||||
|
let range = reader.offset..<(reader.offset+count)
|
||||||
|
guard reader.data.count >= range.upperBound else {
|
||||||
|
throw UniffiInternalError.bufferOverflow
|
||||||
|
}
|
||||||
|
var value = [UInt8](repeating: 0, count: count)
|
||||||
|
value.withUnsafeMutableBufferPointer({ buffer in
|
||||||
|
reader.data.copyBytes(to: buffer, from: range)
|
||||||
|
})
|
||||||
|
reader.offset = range.upperBound
|
||||||
|
return value
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reads a float at the current offset.
|
||||||
|
fileprivate func readFloat(_ reader: inout (data: Data, offset: Data.Index)) throws -> Float {
|
||||||
|
return Float(bitPattern: try readInt(&reader))
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reads a float at the current offset.
|
||||||
|
fileprivate func readDouble(_ reader: inout (data: Data, offset: Data.Index)) throws -> Double {
|
||||||
|
return Double(bitPattern: try readInt(&reader))
|
||||||
|
}
|
||||||
|
|
||||||
|
// Indicates if the offset has reached the end of the buffer.
|
||||||
|
fileprivate func hasRemaining(_ reader: (data: Data, offset: Data.Index)) -> Bool {
|
||||||
|
return reader.offset < reader.data.count
|
||||||
|
}
|
||||||
|
|
||||||
|
// Define writer functionality. Normally this would be defined in a class or
|
||||||
|
// struct, but we use standalone functions instead in order to make external
|
||||||
|
// types work. See the above discussion on Readers for details.
|
||||||
|
|
||||||
|
fileprivate func createWriter() -> [UInt8] {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
|
||||||
|
fileprivate func writeBytes<S>(_ writer: inout [UInt8], _ byteArr: S) where S: Sequence, S.Element == UInt8 {
|
||||||
|
writer.append(contentsOf: byteArr)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Writes an integer in big-endian order.
|
||||||
|
//
|
||||||
|
// Warning: make sure what you are trying to write
|
||||||
|
// is in the correct type!
|
||||||
|
fileprivate func writeInt<T: FixedWidthInteger>(_ writer: inout [UInt8], _ value: T) {
|
||||||
|
var value = value.bigEndian
|
||||||
|
withUnsafeBytes(of: &value) { writer.append(contentsOf: $0) }
|
||||||
|
}
|
||||||
|
|
||||||
|
fileprivate func writeFloat(_ writer: inout [UInt8], _ value: Float) {
|
||||||
|
writeInt(&writer, value.bitPattern)
|
||||||
|
}
|
||||||
|
|
||||||
|
fileprivate func writeDouble(_ writer: inout [UInt8], _ value: Double) {
|
||||||
|
writeInt(&writer, value.bitPattern)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Protocol for types that transfer other types across the FFI. This is
|
||||||
|
// analogous to the Rust trait of the same name.
|
||||||
|
fileprivate protocol FfiConverter {
|
||||||
|
associatedtype FfiType
|
||||||
|
associatedtype SwiftType
|
||||||
|
|
||||||
|
static func lift(_ value: FfiType) throws -> SwiftType
|
||||||
|
static func lower(_ value: SwiftType) -> FfiType
|
||||||
|
static func read(from buf: inout (data: Data, offset: Data.Index)) throws -> SwiftType
|
||||||
|
static func write(_ value: SwiftType, into buf: inout [UInt8])
|
||||||
|
}
|
||||||
|
|
||||||
|
// Types conforming to `Primitive` pass themselves directly over the FFI.
|
||||||
|
fileprivate protocol FfiConverterPrimitive: FfiConverter where FfiType == SwiftType { }
|
||||||
|
|
||||||
|
extension FfiConverterPrimitive {
|
||||||
|
public static func lift(_ value: FfiType) throws -> SwiftType {
|
||||||
|
return value
|
||||||
|
}
|
||||||
|
|
||||||
|
public static func lower(_ value: SwiftType) -> FfiType {
|
||||||
|
return value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Types conforming to `FfiConverterRustBuffer` lift and lower into a `RustBuffer`.
|
||||||
|
// Used for complex types where it's hard to write a custom lift/lower.
|
||||||
|
fileprivate protocol FfiConverterRustBuffer: FfiConverter where FfiType == RustBuffer {}
|
||||||
|
|
||||||
|
extension FfiConverterRustBuffer {
|
||||||
|
public static func lift(_ buf: RustBuffer) throws -> SwiftType {
|
||||||
|
var reader = createReader(data: Data(rustBuffer: buf))
|
||||||
|
let value = try read(from: &reader)
|
||||||
|
if hasRemaining(reader) {
|
||||||
|
throw UniffiInternalError.incompleteData
|
||||||
|
}
|
||||||
|
buf.deallocate()
|
||||||
|
return value
|
||||||
|
}
|
||||||
|
|
||||||
|
public static func lower(_ value: SwiftType) -> RustBuffer {
|
||||||
|
var writer = createWriter()
|
||||||
|
write(value, into: &writer)
|
||||||
|
return RustBuffer(bytes: writer)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// An error type for FFI errors. These errors occur at the UniFFI level, not
|
||||||
|
// the library level.
|
||||||
|
fileprivate enum UniffiInternalError: LocalizedError {
|
||||||
|
case bufferOverflow
|
||||||
|
case incompleteData
|
||||||
|
case unexpectedOptionalTag
|
||||||
|
case unexpectedEnumCase
|
||||||
|
case unexpectedNullPointer
|
||||||
|
case unexpectedRustCallStatusCode
|
||||||
|
case unexpectedRustCallError
|
||||||
|
case unexpectedStaleHandle
|
||||||
|
case rustPanic(_ message: String)
|
||||||
|
|
||||||
|
public var errorDescription: String? {
|
||||||
|
switch self {
|
||||||
|
case .bufferOverflow: return "Reading the requested value would read past the end of the buffer"
|
||||||
|
case .incompleteData: return "The buffer still has data after lifting its containing value"
|
||||||
|
case .unexpectedOptionalTag: return "Unexpected optional tag; should be 0 or 1"
|
||||||
|
case .unexpectedEnumCase: return "Raw enum value doesn't match any cases"
|
||||||
|
case .unexpectedNullPointer: return "Raw pointer value was null"
|
||||||
|
case .unexpectedRustCallStatusCode: return "Unexpected RustCallStatus code"
|
||||||
|
case .unexpectedRustCallError: return "CALL_ERROR but no errorClass specified"
|
||||||
|
case .unexpectedStaleHandle: return "The object in the handle map has been dropped already"
|
||||||
|
case let .rustPanic(message): return message
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fileprivate extension NSLock {
|
||||||
|
func withLock<T>(f: () throws -> T) rethrows -> T {
|
||||||
|
self.lock()
|
||||||
|
defer { self.unlock() }
|
||||||
|
return try f()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fileprivate let CALL_SUCCESS: Int8 = 0
|
||||||
|
fileprivate let CALL_ERROR: Int8 = 1
|
||||||
|
fileprivate let CALL_UNEXPECTED_ERROR: Int8 = 2
|
||||||
|
fileprivate let CALL_CANCELLED: Int8 = 3
|
||||||
|
|
||||||
|
fileprivate extension RustCallStatus {
|
||||||
|
init() {
|
||||||
|
self.init(
|
||||||
|
code: CALL_SUCCESS,
|
||||||
|
errorBuf: RustBuffer.init(
|
||||||
|
capacity: 0,
|
||||||
|
len: 0,
|
||||||
|
data: nil
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private func rustCall<T>(_ callback: (UnsafeMutablePointer<RustCallStatus>) -> T) throws -> T {
|
||||||
|
let neverThrow: ((RustBuffer) throws -> Never)? = nil
|
||||||
|
return try makeRustCall(callback, errorHandler: neverThrow)
|
||||||
|
}
|
||||||
|
|
||||||
|
private func rustCallWithError<T, E: Swift.Error>(
|
||||||
|
_ errorHandler: @escaping (RustBuffer) throws -> E,
|
||||||
|
_ callback: (UnsafeMutablePointer<RustCallStatus>) -> T) throws -> T {
|
||||||
|
try makeRustCall(callback, errorHandler: errorHandler)
|
||||||
|
}
|
||||||
|
|
||||||
|
private func makeRustCall<T, E: Swift.Error>(
|
||||||
|
_ callback: (UnsafeMutablePointer<RustCallStatus>) -> T,
|
||||||
|
errorHandler: ((RustBuffer) throws -> E)?
|
||||||
|
) throws -> T {
|
||||||
|
uniffiEnsureInitialized()
|
||||||
|
var callStatus = RustCallStatus.init()
|
||||||
|
let returnedVal = callback(&callStatus)
|
||||||
|
try uniffiCheckCallStatus(callStatus: callStatus, errorHandler: errorHandler)
|
||||||
|
return returnedVal
|
||||||
|
}
|
||||||
|
|
||||||
|
private func uniffiCheckCallStatus<E: Swift.Error>(
|
||||||
|
callStatus: RustCallStatus,
|
||||||
|
errorHandler: ((RustBuffer) throws -> E)?
|
||||||
|
) throws {
|
||||||
|
switch callStatus.code {
|
||||||
|
case CALL_SUCCESS:
|
||||||
|
return
|
||||||
|
|
||||||
|
case CALL_ERROR:
|
||||||
|
if let errorHandler = errorHandler {
|
||||||
|
throw try errorHandler(callStatus.errorBuf)
|
||||||
|
} else {
|
||||||
|
callStatus.errorBuf.deallocate()
|
||||||
|
throw UniffiInternalError.unexpectedRustCallError
|
||||||
|
}
|
||||||
|
|
||||||
|
case CALL_UNEXPECTED_ERROR:
|
||||||
|
// When the rust code sees a panic, it tries to construct a RustBuffer
|
||||||
|
// with the message. But if that code panics, then it just sends back
|
||||||
|
// an empty buffer.
|
||||||
|
if callStatus.errorBuf.len > 0 {
|
||||||
|
throw UniffiInternalError.rustPanic(try FfiConverterString.lift(callStatus.errorBuf))
|
||||||
|
} else {
|
||||||
|
callStatus.errorBuf.deallocate()
|
||||||
|
throw UniffiInternalError.rustPanic("Rust panic")
|
||||||
|
}
|
||||||
|
|
||||||
|
case CALL_CANCELLED:
|
||||||
|
fatalError("Cancellation not supported yet")
|
||||||
|
|
||||||
|
default:
|
||||||
|
throw UniffiInternalError.unexpectedRustCallStatusCode
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private func uniffiTraitInterfaceCall<T>(
|
||||||
|
callStatus: UnsafeMutablePointer<RustCallStatus>,
|
||||||
|
makeCall: () throws -> T,
|
||||||
|
writeReturn: (T) -> ()
|
||||||
|
) {
|
||||||
|
do {
|
||||||
|
try writeReturn(makeCall())
|
||||||
|
} catch let error {
|
||||||
|
callStatus.pointee.code = CALL_UNEXPECTED_ERROR
|
||||||
|
callStatus.pointee.errorBuf = FfiConverterString.lower(String(describing: error))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private func uniffiTraitInterfaceCallWithError<T, E>(
|
||||||
|
callStatus: UnsafeMutablePointer<RustCallStatus>,
|
||||||
|
makeCall: () throws -> T,
|
||||||
|
writeReturn: (T) -> (),
|
||||||
|
lowerError: (E) -> RustBuffer
|
||||||
|
) {
|
||||||
|
do {
|
||||||
|
try writeReturn(makeCall())
|
||||||
|
} catch let error as E {
|
||||||
|
callStatus.pointee.code = CALL_ERROR
|
||||||
|
callStatus.pointee.errorBuf = lowerError(error)
|
||||||
|
} catch {
|
||||||
|
callStatus.pointee.code = CALL_UNEXPECTED_ERROR
|
||||||
|
callStatus.pointee.errorBuf = FfiConverterString.lower(String(describing: error))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fileprivate class UniffiHandleMap<T> {
|
||||||
|
private var map: [UInt64: T] = [:]
|
||||||
|
private let lock = NSLock()
|
||||||
|
private var currentHandle: UInt64 = 1
|
||||||
|
|
||||||
|
func insert(obj: T) -> UInt64 {
|
||||||
|
lock.withLock {
|
||||||
|
let handle = currentHandle
|
||||||
|
currentHandle += 1
|
||||||
|
map[handle] = obj
|
||||||
|
return handle
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func get(handle: UInt64) throws -> T {
|
||||||
|
try lock.withLock {
|
||||||
|
guard let obj = map[handle] else {
|
||||||
|
throw UniffiInternalError.unexpectedStaleHandle
|
||||||
|
}
|
||||||
|
return obj
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@discardableResult
|
||||||
|
func remove(handle: UInt64) throws -> T {
|
||||||
|
try lock.withLock {
|
||||||
|
guard let obj = map.removeValue(forKey: handle) else {
|
||||||
|
throw UniffiInternalError.unexpectedStaleHandle
|
||||||
|
}
|
||||||
|
return obj
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var count: Int {
|
||||||
|
get {
|
||||||
|
map.count
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Public interface members begin here.
|
||||||
|
|
||||||
|
|
||||||
|
fileprivate struct FfiConverterUInt64: FfiConverterPrimitive {
|
||||||
|
typealias FfiType = UInt64
|
||||||
|
typealias SwiftType = UInt64
|
||||||
|
|
||||||
|
public static func read(from buf: inout (data: Data, offset: Data.Index)) throws -> UInt64 {
|
||||||
|
return try lift(readInt(&buf))
|
||||||
|
}
|
||||||
|
|
||||||
|
public static func write(_ value: SwiftType, into buf: inout [UInt8]) {
|
||||||
|
writeInt(&buf, lower(value))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fileprivate struct FfiConverterString: FfiConverter {
|
||||||
|
typealias SwiftType = String
|
||||||
|
typealias FfiType = RustBuffer
|
||||||
|
|
||||||
|
public static func lift(_ value: RustBuffer) throws -> String {
|
||||||
|
defer {
|
||||||
|
value.deallocate()
|
||||||
|
}
|
||||||
|
if value.data == nil {
|
||||||
|
return String()
|
||||||
|
}
|
||||||
|
let bytes = UnsafeBufferPointer<UInt8>(start: value.data!, count: Int(value.len))
|
||||||
|
return String(bytes: bytes, encoding: String.Encoding.utf8)!
|
||||||
|
}
|
||||||
|
|
||||||
|
public static func lower(_ value: String) -> RustBuffer {
|
||||||
|
return value.utf8CString.withUnsafeBufferPointer { ptr in
|
||||||
|
// The swift string gives us int8_t, we want uint8_t.
|
||||||
|
ptr.withMemoryRebound(to: UInt8.self) { ptr in
|
||||||
|
// The swift string gives us a trailing null byte, we don't want it.
|
||||||
|
let buf = UnsafeBufferPointer(rebasing: ptr.prefix(upTo: ptr.count - 1))
|
||||||
|
return RustBuffer.from(buf)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static func read(from buf: inout (data: Data, offset: Data.Index)) throws -> String {
|
||||||
|
let len: Int32 = try readInt(&buf)
|
||||||
|
return String(bytes: try readBytes(&buf, count: Int(len)), encoding: String.Encoding.utf8)!
|
||||||
|
}
|
||||||
|
|
||||||
|
public static func write(_ value: String, into buf: inout [UInt8]) {
|
||||||
|
let len = Int32(value.utf8.count)
|
||||||
|
writeInt(&buf, len)
|
||||||
|
writeBytes(&buf, value.utf8)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public func getSecretValue(givenTime: UInt64, userAgent: String, url: String) -> String {
|
||||||
|
return try! FfiConverterString.lift(try! rustCall() {
|
||||||
|
uniffi_hublib_fn_func_get_secret_value(
|
||||||
|
FfiConverterUInt64.lower(givenTime),
|
||||||
|
FfiConverterString.lower(userAgent),
|
||||||
|
FfiConverterString.lower(url),$0
|
||||||
|
)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
public func recreateSecretValue(givenTime: UInt64, userAgent: String, url: String, gottenValue: String) -> String {
|
||||||
|
return try! FfiConverterString.lift(try! rustCall() {
|
||||||
|
uniffi_hublib_fn_func_recreate_secret_value(
|
||||||
|
FfiConverterUInt64.lower(givenTime),
|
||||||
|
FfiConverterString.lower(userAgent),
|
||||||
|
FfiConverterString.lower(url),
|
||||||
|
FfiConverterString.lower(gottenValue),$0
|
||||||
|
)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
private enum InitializationResult {
|
||||||
|
case ok
|
||||||
|
case contractVersionMismatch
|
||||||
|
case apiChecksumMismatch
|
||||||
|
}
|
||||||
|
// Use a global variable to perform the versioning checks. Swift ensures that
|
||||||
|
// the code inside is only computed once.
|
||||||
|
private var initializationResult: InitializationResult = {
|
||||||
|
// Get the bindings contract version from our ComponentInterface
|
||||||
|
let bindings_contract_version = 26
|
||||||
|
// Get the scaffolding contract version by calling the into the dylib
|
||||||
|
let scaffolding_contract_version = ffi_hublib_uniffi_contract_version()
|
||||||
|
if bindings_contract_version != scaffolding_contract_version {
|
||||||
|
return InitializationResult.contractVersionMismatch
|
||||||
|
}
|
||||||
|
if (uniffi_hublib_checksum_func_get_secret_value() != 1475) {
|
||||||
|
return InitializationResult.apiChecksumMismatch
|
||||||
|
}
|
||||||
|
if (uniffi_hublib_checksum_func_recreate_secret_value() != 37917) {
|
||||||
|
return InitializationResult.apiChecksumMismatch
|
||||||
|
}
|
||||||
|
|
||||||
|
return InitializationResult.ok
|
||||||
|
}()
|
||||||
|
|
||||||
|
private func uniffiEnsureInitialized() {
|
||||||
|
switch initializationResult {
|
||||||
|
case .ok:
|
||||||
|
break
|
||||||
|
case .contractVersionMismatch:
|
||||||
|
fatalError("UniFFI contract version mismatch: try cleaning and rebuilding your project")
|
||||||
|
case .apiChecksumMismatch:
|
||||||
|
fatalError("UniFFI API checksum mismatch: try cleaning and rebuilding your project")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// swiftlint:enable all
|
||||||
11
README.md
Normal file
11
README.md
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
## Модуль библиотеки шифрования для iOS
|
||||||
|
|
||||||
|
Как использовать?
|
||||||
|
1. получить время в данный момент с помощью unix timestamp
|
||||||
|
2. сунуть timestamp, user-agent, path (роут, например /api/v1/guestlogin) в get_secret_value
|
||||||
|
3. на целевой эндпоинт отправить header-ы в формате
|
||||||
|
{
|
||||||
|
'Accept-Time': таймстемп,
|
||||||
|
'User-Agent': ну тут ясно,
|
||||||
|
'X-SIGN': результат вызова get_secret_value
|
||||||
|
}
|
||||||
BIN
__MACOSX/._Hublib
Normal file
BIN
__MACOSX/._Hublib
Normal file
Binary file not shown.
BIN
__MACOSX/Hublib/._HublibFramework.xcframework
Normal file
BIN
__MACOSX/Hublib/._HublibFramework.xcframework
Normal file
Binary file not shown.
BIN
__MACOSX/Hublib/._Package.swift
Normal file
BIN
__MACOSX/Hublib/._Package.swift
Normal file
Binary file not shown.
BIN
__MACOSX/Hublib/._Sources
Normal file
BIN
__MACOSX/Hublib/._Sources
Normal file
Binary file not shown.
BIN
__MACOSX/Hublib/HublibFramework.xcframework/._Info.plist
Normal file
BIN
__MACOSX/Hublib/HublibFramework.xcframework/._Info.plist
Normal file
Binary file not shown.
BIN
__MACOSX/Hublib/HublibFramework.xcframework/._ios-arm64
Normal file
BIN
__MACOSX/Hublib/HublibFramework.xcframework/._ios-arm64
Normal file
Binary file not shown.
Binary file not shown.
BIN
__MACOSX/Hublib/HublibFramework.xcframework/ios-arm64/._Headers
Normal file
BIN
__MACOSX/Hublib/HublibFramework.xcframework/ios-arm64/._Headers
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
__MACOSX/Hublib/Sources/._Hublib
Normal file
BIN
__MACOSX/Hublib/Sources/._Hublib
Normal file
Binary file not shown.
BIN
__MACOSX/Hublib/Sources/Hublib/._hublib.swift
Normal file
BIN
__MACOSX/Hublib/Sources/Hublib/._hublib.swift
Normal file
Binary file not shown.
Reference in New Issue
Block a user