From: liangzhenying <867174124@qq.com> Date: Sat, 17 Aug 2024 09:14:13 +0000 (+0800) Subject: 新增图片压缩解压 X-Git-Tag: deepseek~7 X-Git-Url: http://git.snicker.com.cn/sitemap.xml?a=commitdiff_plain;h=e2a3235cdaf4df73cb23cfaedf6d9afa97ae309a;p=mirrors%2FMixSdk-iOS.git 新增图片压缩解压 --- diff --git a/MixSdk/Example/Example.xcodeproj/project.pbxproj b/MixSdk/Example/Example.xcodeproj/project.pbxproj index 762c5f2..1df9d74 100644 --- a/MixSdk/Example/Example.xcodeproj/project.pbxproj +++ b/MixSdk/Example/Example.xcodeproj/project.pbxproj @@ -22,7 +22,10 @@ 184FFC492C218FC4006F664D /* PlayerManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 184FFC482C218FC4006F664D /* PlayerManager.swift */; }; 184FFC4D2C2199E5006F664D /* SendToolBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 184FFC4C2C2199E5006F664D /* SendToolBar.swift */; }; 184FFC512C21A4EB006F664D /* TtsLongViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 184FFC502C21A4EB006F664D /* TtsLongViewController.swift */; }; + 185D665B2C6C4E5D009AE49F /* MSCompress.swift in Sources */ = {isa = PBXBuildFile; fileRef = 185D66592C6C4E5D009AE49F /* MSCompress.swift */; }; + 185D665D2C6C4EE0009AE49F /* SCompressLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 185D665C2C6C4EE0009AE49F /* SCompressLib.framework */; }; 186BFD4B2C57952600673D8C /* VoiceChatViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 186BFD4A2C57952600673D8C /* VoiceChatViewController.swift */; }; + 187C54662C6B7C7F0022C3D4 /* ImgCompressViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 187C54652C6B7C7F0022C3D4 /* ImgCompressViewController.swift */; }; 188695A62C5A3CAD00B9B89F /* Date.swift in Sources */ = {isa = PBXBuildFile; fileRef = 188695A52C5A3CAD00B9B89F /* Date.swift */; }; 18A2DB6C2C40C5CC00A8731B /* AIAudio.sbc in Resources */ = {isa = PBXBuildFile; fileRef = 18A2DB6B2C40C5CC00A8731B /* AIAudio.sbc */; }; 18ABF57A2C3F884600C60E9B /* 2.pcm in Resources */ = {isa = PBXBuildFile; fileRef = 18ABF5792C3F884600C60E9B /* 2.pcm */; }; @@ -75,7 +78,10 @@ 184FFC482C218FC4006F664D /* PlayerManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayerManager.swift; sourceTree = ""; }; 184FFC4C2C2199E5006F664D /* SendToolBar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SendToolBar.swift; sourceTree = ""; }; 184FFC502C21A4EB006F664D /* TtsLongViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TtsLongViewController.swift; sourceTree = ""; }; + 185D66592C6C4E5D009AE49F /* MSCompress.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MSCompress.swift; sourceTree = ""; }; + 185D665C2C6C4EE0009AE49F /* SCompressLib.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = SCompressLib.framework; sourceTree = SOURCE_ROOT; }; 186BFD4A2C57952600673D8C /* VoiceChatViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceChatViewController.swift; sourceTree = ""; }; + 187C54652C6B7C7F0022C3D4 /* ImgCompressViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImgCompressViewController.swift; sourceTree = ""; }; 188695A52C5A3CAD00B9B89F /* Date.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Date.swift; sourceTree = ""; }; 18A2DB6B2C40C5CC00A8731B /* AIAudio.sbc */ = {isa = PBXFileReference; lastKnownFileType = file; path = AIAudio.sbc; sourceTree = ""; }; 18ABF5792C3F884600C60E9B /* 2.pcm */ = {isa = PBXFileReference; lastKnownFileType = file; path = 2.pcm; sourceTree = ""; }; @@ -110,6 +116,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 185D665D2C6C4EE0009AE49F /* SCompressLib.framework in Frameworks */, 18C42C862C242B0B000D8860 /* libbz2.tbd in Frameworks */, 18C42C842C242B01000D8860 /* libiconv.tbd in Frameworks */, 18C42C822C242AD3000D8860 /* CoreAudio.framework in Frameworks */, @@ -158,6 +165,7 @@ 18204BD22C193F9A00F94E69 /* Example */ = { isa = PBXGroup; children = ( + 185D665C2C6C4EE0009AE49F /* SCompressLib.framework */, 186E75102C3E33EB0040671B /* Tools */, 18DB20412C213D600070D571 /* Record */, 181188582C1BE80B00C23FAB /* Resource */, @@ -174,6 +182,8 @@ 18B74A272C201F2500FABBA9 /* TranslateViewController.swift */, 18B74A292C201FF200FABBA9 /* AigcViewController.swift */, 18C42C892C24344D000D8860 /* Sbc2PcmViewController.swift */, + 187C54652C6B7C7F0022C3D4 /* ImgCompressViewController.swift */, + 185D66592C6C4E5D009AE49F /* MSCompress.swift */, 1843A7952C4E060D00FC010F /* LogViewController.swift */, 18EC39D02C4F421C00964461 /* Config.swift */, 18204BD92C193F9A00F94E69 /* Main.storyboard */, @@ -384,6 +394,7 @@ 18FBC2BB2C38E0FC002240AF /* ChatGptViewController.swift in Sources */, 18B74A242C201CE900FABBA9 /* SttViewController.swift in Sources */, 1843A7962C4E060D00FC010F /* LogViewController.swift in Sources */, + 185D665B2C6C4E5D009AE49F /* MSCompress.swift in Sources */, 18EF694A2C44CB1E00AA0A36 /* BleManager.swift in Sources */, 18204BD42C193F9A00F94E69 /* AppDelegate.swift in Sources */, 18B74A262C201EBD00FABBA9 /* ChatViewController.swift in Sources */, @@ -396,6 +407,7 @@ 184FFC512C21A4EB006F664D /* TtsLongViewController.swift in Sources */, 18C42B412C230A15000D8860 /* TtsFileViewController.swift in Sources */, 18EC39D12C4F421C00964461 /* Config.swift in Sources */, + 187C54662C6B7C7F0022C3D4 /* ImgCompressViewController.swift in Sources */, 188695A62C5A3CAD00B9B89F /* Date.swift in Sources */, 18C42C8A2C24344D000D8860 /* Sbc2PcmViewController.swift in Sources */, 18B74A282C201F2500FABBA9 /* TranslateViewController.swift in Sources */, @@ -554,6 +566,10 @@ CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = M33X987285; ENABLE_USER_SCRIPT_SANDBOXING = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)", + ); GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = Example/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = MixSdk; @@ -573,6 +589,7 @@ PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_OBJC_BRIDGING_HEADER = "Example/Record/Example-Bridging-Header.h"; + SWIFT_OBJC_INTEROP_MODE = objcxx; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -590,6 +607,10 @@ CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = M33X987285; ENABLE_USER_SCRIPT_SANDBOXING = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)", + ); GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = Example/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = MixSdk; @@ -609,6 +630,7 @@ PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_OBJC_BRIDGING_HEADER = "Example/Record/Example-Bridging-Header.h"; + SWIFT_OBJC_INTEROP_MODE = objcxx; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; }; diff --git a/MixSdk/Example/Example/ImgCompressViewController.swift b/MixSdk/Example/Example/ImgCompressViewController.swift new file mode 100644 index 0000000..9c1f516 --- /dev/null +++ b/MixSdk/Example/Example/ImgCompressViewController.swift @@ -0,0 +1,80 @@ +// +// ImgCompressViewController.swift +// Example +// +// Created by incar on 2024/8/13. +// + +import UIKit + +class ImgCompressViewController: UIViewController { + var binPath:String? + var imgView = UIImageView() + + override func viewDidLoad() { + super.viewDidLoad() + // Do any additional setup after loading the view. + view.backgroundColor = .white + + + let btn = UIButton(type: .custom) + btn.setTitle("压缩", for: .normal) + btn.addTarget(self, action: #selector(compressAction), for: .touchUpInside) + btn.frame = CGRect(x: 100, y: 100, width: 50, height: 50) + btn.backgroundColor = .red + view.addSubview(btn) + + + let btn1 = UIButton(type: .custom) + btn1.setTitle("解压", for: .normal) + btn1.addTarget(self, action: #selector(deCompressAction), for: .touchUpInside) + btn1.frame = CGRect(x: 100, y: 200, width: 50, height: 50) + btn1.backgroundColor = .red + view.addSubview(btn1) + + + imgView.frame = CGRectMake(0, 300,300, 300) + view.addSubview(imgView) + } + + @objc func compressAction(){ + let image = UIImage(imageLiteralResourceName: "51722943641_.pic.png") + MSCompress.compress(image: image) { retData in + + //保存 + let basedFilePath = NSHomeDirectory() + "/Documents" + let fileManager = FileManager.default + let format = DateFormatter() + let now = Date() + format.dateFormat = "HHmmss" + let timeStamp = format.string(from: now) + let fullPath = basedFilePath + "/CompressRets_abalone" + timeStamp + ".bin" + print("fullPath = \(fullPath)") + self.binPath = fullPath + + let exist = fileManager.fileExists(atPath: fullPath) + if !exist { + let data = Data(bytes: retData, count: retData.count) + fileManager.createFile(atPath: fullPath, contents: data) + } + } + } + + @objc func deCompressAction(){ + if let fullPath = binPath{ + let fileURL = URL(fileURLWithPath: fullPath) + do { + let fileData = try Data(contentsOf: fileURL) + MSCompress.deCompress(data: fileData) { image in + self.imgView.image = image + } + } catch { + print("file read error.") + } + } + else{ + print("请先压缩") + } + } +} + diff --git a/MixSdk/Example/Example/MSCompress.swift b/MixSdk/Example/Example/MSCompress.swift new file mode 100644 index 0000000..8f7904e --- /dev/null +++ b/MixSdk/Example/Example/MSCompress.swift @@ -0,0 +1,140 @@ +// +// MSCompress.swift +// Example +// +// Created by incar on 2024/8/13. +// + +import UIKit +import SCompressLib + +/// 压缩回调 +public typealias MSCompressCallBack = (_ retData: [UInt8]) -> Void +/// 解压回调 +public typealias MSDeCompressCallBack = (_ image: UIImage?) -> Void + +public class MSCompress{ + fileprivate static var compressCallBack:MSCompressCallBack? + fileprivate static var decompressCallBack:MSDeCompressCallBack? + + public static func compress(image:UIImage,finished: @escaping MSCompressCallBack){ + compressCallBack = finished + + print("start = ",Date().timeIntervalSince1970) + let width = Int(image.size.width) + let height = Int(image.size.height) + print("width = \(width), height = \(height)") + let pixelFormat = image.cgImage?.pixelFormatInfo + print("pixelFormat = \(pixelFormat.debugDescription)") + var sParam = SCompressParam() + sParam.id = 15 + sParam.width = Int32(width) + sParam.height = Int32(height) + sParam.stride = Int32(width) + sParam.modeRgb = 1 + sParam.modeAlpha = 1 + sParam.cmpMode = 0 + sParam.tileWidth = 4 + sParam.pixelFormat = 1 + + let provider = image.cgImage!.dataProvider + let providerData = provider!.data + let data = CFDataGetBytePtr(providerData) + + for hei in 0...(height - 1) { + for wid in 0...(width - 1) { + let color = image[data!,providerData!,wid, hei] + sParam.redChannel.append(color.r) + sParam.greenChannel.append(color.g) + sParam.blueChannel.append(color.b) + sParam.alphaChannel.append(color.a) + } + } + print("red channel len = \(sParam.redChannel.count)") + let picApi = SPicZipApi() + SetZipEvent(picEvent: MyZipRets()) + picApi.Compress(compressParam: sParam) + print("end = ",Date().timeIntervalSince1970) + } + + public static func deCompress(data:Data,finished: @escaping MSDeCompressCallBack){ + decompressCallBack = finished + print("start = ",Date().timeIntervalSince1970) + let picApi = SPicZipApi() + var compressedFile : [UInt8] = [] + for i in 0...data.count - 1 { + compressedFile.append(data[i]) + } + picApi.Decompress(id: 39, fileBuffer: compressedFile) + print("end = ",Date().timeIntervalSince1970) + } + +} + +fileprivate func drawRect(decomRets: SCompressLib.SDecompressRets) ->CGImage?{ + let width = decomRets.width + let height = decomRets.height + let boundingBox = CGRectMake(0, 0, CGFloat(width), CGFloat(height)) + let context = createBitmapContext(pixelsWide: Int(width), Int(height)) + let data = context!.data + var pixelIdx = 0 + var chanIdx = 0 + for i in 0...height - 1 { + for j in 0...width - 1 { + chanIdx = Int(i * width + j) + data?.storeBytes(of:decomRets.alphaChannel[chanIdx], toByteOffset: pixelIdx, as: UInt8.self) + pixelIdx += 1 + data?.storeBytes(of:decomRets.redChannel[chanIdx], toByteOffset: pixelIdx, as: UInt8.self) + pixelIdx += 1 + data?.storeBytes(of:decomRets.greenChannel[chanIdx], toByteOffset: pixelIdx, as: UInt8.self) + pixelIdx += 1 + data?.storeBytes(of:decomRets.blueChannel[chanIdx], toByteOffset: pixelIdx, as: UInt8.self) + pixelIdx += 1 + } + } + let decompressPic = context!.makeImage() + return decompressPic +} + +fileprivate func createBitmapContext(pixelsWide: Int, _ pixelsHigh: Int) -> CGContext? { + let bytesPerPixel = 4 // 生成包括ARGB四个通道的像素点,每个像素点需要4个字节 + let bytesPerRow = bytesPerPixel * pixelsWide + let bitsPerComponent = 8 + let byteCount = (bytesPerRow * pixelsHigh) + let colorSpace = CGColorSpaceCreateDeviceRGB() + let pixels = UnsafeMutablePointer.allocate(capacity:byteCount) + let bitmapInfo = CGImageAlphaInfo.premultipliedFirst.rawValue | CGBitmapInfo.byteOrder32Big.rawValue + let context = CGContext(data: pixels, width: pixelsWide, height: pixelsHigh, bitsPerComponent: bitsPerComponent, bytesPerRow: bytesPerRow, space: colorSpace, bitmapInfo: bitmapInfo) + return context +} + +fileprivate struct MyZipRets : PicZipEvent { + func DecompressRets(id: Int, state: Int, decomRets: SCompressLib.SDecompressRets) { + let imageWidth = Int(decomRets.width) + let imageHeight = Int(decomRets.height) + var cgImg = drawRect(decomRets: decomRets) + var img = (cgImg != nil) ? UIImage(cgImage: cgImg!):nil + MSCompress.decompressCallBack?(img) + print("decompress finish id ====== \(id)") + } + + func CompressRets(id: Int, state: Int, tileWidth: Int, retData: [UInt8]) { + MSCompress.compressCallBack?(retData) + } +} + + +fileprivate extension UIImage { + subscript (data:UnsafePointer,providerData:CFData,x: Int, y: Int) -> (r : UInt8, g : UInt8, b : UInt8, a : UInt8) { + if x < 0 || x > Int(size.width) || y < 0 || y > Int(size.height) { + return (0, 0, 0, 0) + } + let numberOfComponents = 4 + let pixelData = ((Int(size.width) * y) + x) * numberOfComponents + let r = UInt8(data[pixelData]) + let g = UInt8(data[pixelData + 1]) + let b = UInt8(data[pixelData + 2]) + let a = UInt8(data[pixelData + 3]) + return (r, g, b, a) + } +} diff --git a/MixSdk/Example/Example/ViewController.swift b/MixSdk/Example/Example/ViewController.swift index 4d38e71..c822f19 100644 --- a/MixSdk/Example/Example/ViewController.swift +++ b/MixSdk/Example/Example/ViewController.swift @@ -27,7 +27,7 @@ class ViewController: UIViewController{ ("语音文件转文本","fileSttAction"), ("语音数据流转文本","sttAction"), ("sbc转pcm","sbc2PcmAction"), - + ("图片转换","imageAction"), ] override func viewDidLoad() { @@ -183,6 +183,10 @@ extension ViewController{ // let vc = VoiceChatViewController() // self.navigationController?.pushViewController(vc, animated: true) // } + @objc func imageAction() { + let vc = ImgCompressViewController() + self.navigationController?.pushViewController(vc, animated: true) + } } diff --git a/MixSdk/Example/SCompressLib.framework/Headers/CPicZipApi.hpp b/MixSdk/Example/SCompressLib.framework/Headers/CPicZipApi.hpp new file mode 100644 index 0000000..986c73a --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/Headers/CPicZipApi.hpp @@ -0,0 +1,45 @@ +// +// CPicZipApi.hpp +// SCompressLib +// +// Created by l30037444 on 2023/10/26. +// + +#ifndef CPicZipApi_hpp +#define CPicZipApi_hpp + +#include + +struct DecompressRet { + int width; + int height; + int format; + unsigned char* redChannel; + unsigned char* greenChannel; + unsigned char* blueChannel; + unsigned char* alphaChannel; +}; + +struct CompressParam { + int id; + int width; + int height; + int stride; + int pixelFormat; // 0-- RGB888, 1-- ARGB8888, 2-- RGB565 + int tileWidth; //TILE: 4-- 4x4, 6-- 6x4, 8-- 8x4, 16-- 16x4 + int modeAlpha; //0-- A_BYPASS, 1-- A_MERGE, 2-- A_SEPARATE, 3-- A_CONST, 4-- A_BINARY + int modeRgb; //0-- RGB_BYPASS, 1-- RGB_ASTC, 2-- RGB_TABLE, 3-- RGB_CONST ,4-- RGB_BINARY + int cmpMode; + unsigned char* redChannel; + unsigned char* greenChannel; + unsigned char* blueChannel; + unsigned char* alphaChannel; +}; + +class CPicZipApi { +public: + void Compress(const CompressParam& param); + void Decompress(int id, unsigned char* fileBuffer, int buffLen); +}; + +#endif /* CPicZipApi_hpp */ diff --git a/MixSdk/Example/SCompressLib.framework/Headers/SCompressLib-Swift.h b/MixSdk/Example/SCompressLib.framework/Headers/SCompressLib-Swift.h new file mode 100644 index 0000000..37f6309 --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/Headers/SCompressLib-Swift.h @@ -0,0 +1,5759 @@ +#if 0 +#elif defined(__arm64__) && __arm64__ +// Generated by Apple Swift version 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1) +#ifndef SCOMPRESSLIB_SWIFT_H +#define SCOMPRESSLIB_SWIFT_H +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wgcc-compat" + +#if !defined(__has_include) +# define __has_include(x) 0 +#endif +#if !defined(__has_attribute) +# define __has_attribute(x) 0 +#endif +#if !defined(__has_feature) +# define __has_feature(x) 0 +#endif +#if !defined(__has_warning) +# define __has_warning(x) 0 +#endif + +#if __has_include() +# include +#endif + +#pragma clang diagnostic ignored "-Wauto-import" +#if defined(__OBJC__) +#include +#endif +#if defined(__cplusplus) +#include +#include +#include +#include +#include +#include +#include +#else +#include +#include +#include +#include +#endif +#if defined(__cplusplus) +#if defined(__arm64e__) && __has_include() +# include +#else +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-macro-identifier" +# ifndef __ptrauth_swift_value_witness_function_pointer +# define __ptrauth_swift_value_witness_function_pointer(x) +# endif +# ifndef __ptrauth_swift_class_method_pointer +# define __ptrauth_swift_class_method_pointer(x) +# endif +#pragma clang diagnostic pop +#endif +#endif + +#if !defined(SWIFT_TYPEDEFS) +# define SWIFT_TYPEDEFS 1 +# if __has_include() +# include +# elif !defined(__cplusplus) +typedef uint_least16_t char16_t; +typedef uint_least32_t char32_t; +# endif +typedef float swift_float2 __attribute__((__ext_vector_type__(2))); +typedef float swift_float3 __attribute__((__ext_vector_type__(3))); +typedef float swift_float4 __attribute__((__ext_vector_type__(4))); +typedef double swift_double2 __attribute__((__ext_vector_type__(2))); +typedef double swift_double3 __attribute__((__ext_vector_type__(3))); +typedef double swift_double4 __attribute__((__ext_vector_type__(4))); +typedef int swift_int2 __attribute__((__ext_vector_type__(2))); +typedef int swift_int3 __attribute__((__ext_vector_type__(3))); +typedef int swift_int4 __attribute__((__ext_vector_type__(4))); +typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); +typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); +typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); +#endif + +#if !defined(SWIFT_PASTE) +# define SWIFT_PASTE_HELPER(x, y) x##y +# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) +#endif +#if !defined(SWIFT_METATYPE) +# define SWIFT_METATYPE(X) Class +#endif +#if !defined(SWIFT_CLASS_PROPERTY) +# if __has_feature(objc_class_property) +# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ +# else +# define SWIFT_CLASS_PROPERTY(...) +# endif +#endif +#if !defined(SWIFT_RUNTIME_NAME) +# if __has_attribute(objc_runtime_name) +# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) +# else +# define SWIFT_RUNTIME_NAME(X) +# endif +#endif +#if !defined(SWIFT_COMPILE_NAME) +# if __has_attribute(swift_name) +# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) +# else +# define SWIFT_COMPILE_NAME(X) +# endif +#endif +#if !defined(SWIFT_METHOD_FAMILY) +# if __has_attribute(objc_method_family) +# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) +# else +# define SWIFT_METHOD_FAMILY(X) +# endif +#endif +#if !defined(SWIFT_NOESCAPE) +# if __has_attribute(noescape) +# define SWIFT_NOESCAPE __attribute__((noescape)) +# else +# define SWIFT_NOESCAPE +# endif +#endif +#if !defined(SWIFT_RELEASES_ARGUMENT) +# if __has_attribute(ns_consumed) +# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) +# else +# define SWIFT_RELEASES_ARGUMENT +# endif +#endif +#if !defined(SWIFT_WARN_UNUSED_RESULT) +# if __has_attribute(warn_unused_result) +# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) +# else +# define SWIFT_WARN_UNUSED_RESULT +# endif +#endif +#if !defined(SWIFT_NORETURN) +# if __has_attribute(noreturn) +# define SWIFT_NORETURN __attribute__((noreturn)) +# else +# define SWIFT_NORETURN +# endif +#endif +#if !defined(SWIFT_CLASS_EXTRA) +# define SWIFT_CLASS_EXTRA +#endif +#if !defined(SWIFT_PROTOCOL_EXTRA) +# define SWIFT_PROTOCOL_EXTRA +#endif +#if !defined(SWIFT_ENUM_EXTRA) +# define SWIFT_ENUM_EXTRA +#endif +#if !defined(SWIFT_CLASS) +# if __has_attribute(objc_subclassing_restricted) +# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA +# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA +# else +# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA +# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA +# endif +#endif +#if !defined(SWIFT_RESILIENT_CLASS) +# if __has_attribute(objc_class_stub) +# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) +# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) +# else +# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) +# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) +# endif +#endif +#if !defined(SWIFT_PROTOCOL) +# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA +# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA +#endif +#if !defined(SWIFT_EXTENSION) +# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) +#endif +#if !defined(OBJC_DESIGNATED_INITIALIZER) +# if __has_attribute(objc_designated_initializer) +# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) +# else +# define OBJC_DESIGNATED_INITIALIZER +# endif +#endif +#if !defined(SWIFT_ENUM_ATTR) +# if __has_attribute(enum_extensibility) +# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) +# else +# define SWIFT_ENUM_ATTR(_extensibility) +# endif +#endif +#if !defined(SWIFT_ENUM) +# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type +# if __has_feature(generalized_swift_name) +# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type +# else +# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) +# endif +#endif +#if !defined(SWIFT_UNAVAILABLE) +# define SWIFT_UNAVAILABLE __attribute__((unavailable)) +#endif +#if !defined(SWIFT_UNAVAILABLE_MSG) +# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) +#endif +#if !defined(SWIFT_AVAILABILITY) +# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) +#endif +#if !defined(SWIFT_WEAK_IMPORT) +# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) +#endif +#if !defined(SWIFT_DEPRECATED) +# define SWIFT_DEPRECATED __attribute__((deprecated)) +#endif +#if !defined(SWIFT_DEPRECATED_MSG) +# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) +#endif +#if !defined(SWIFT_DEPRECATED_OBJC) +# if __has_feature(attribute_diagnose_if_objc) +# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) +# else +# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) +# endif +#endif +#if defined(__OBJC__) +#if !defined(IBSegueAction) +# define IBSegueAction +#endif +#endif +#if !defined(SWIFT_EXTERN) +# if defined(__cplusplus) +# define SWIFT_EXTERN extern "C" +# else +# define SWIFT_EXTERN extern +# endif +#endif +#if !defined(SWIFT_CALL) +# define SWIFT_CALL __attribute__((swiftcall)) +#endif +#if !defined(SWIFT_INDIRECT_RESULT) +# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) +#endif +#if !defined(SWIFT_CONTEXT) +# define SWIFT_CONTEXT __attribute__((swift_context)) +#endif +#if !defined(SWIFT_ERROR_RESULT) +# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) +#endif +#if defined(__cplusplus) +# define SWIFT_NOEXCEPT noexcept +#else +# define SWIFT_NOEXCEPT +#endif +#if !defined(SWIFT_C_INLINE_THUNK) +# if __has_attribute(always_inline) +# if __has_attribute(nodebug) +# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) +# else +# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) +# endif +# else +# define SWIFT_C_INLINE_THUNK inline +# endif +#endif +#if defined(_WIN32) +#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) +# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) +#endif +#else +#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) +# define SWIFT_IMPORT_STDLIB_SYMBOL +#endif +#endif +#if defined(__OBJC__) +#if __has_feature(objc_modules) +#if __has_warning("-Watimport-in-framework-header") +#pragma clang diagnostic ignored "-Watimport-in-framework-header" +#endif +#endif + +#endif +#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" +#pragma clang diagnostic ignored "-Wduplicate-method-arg" +#if __has_warning("-Wpragma-clang-attribute") +# pragma clang diagnostic ignored "-Wpragma-clang-attribute" +#endif +#pragma clang diagnostic ignored "-Wunknown-pragmas" +#pragma clang diagnostic ignored "-Wnullability" +#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" + +#if __has_attribute(external_source_symbol) +# pragma push_macro("any") +# undef any +# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="SCompressLib",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) +# pragma pop_macro("any") +#endif + +#if defined(__OBJC__) +#endif +#if __has_attribute(external_source_symbol) +# pragma clang attribute pop +#endif +#if defined(__cplusplus) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wnon-modular-include-in-framework-module" +// Look for the C++ interop support header relative to clang's resource dir: +// '/usr/lib/clang//include/../../../swift/swiftToCxx'. +#if __has_include(<../../../swift/swiftToCxx/_SwiftCxxInteroperability.h>) +#include <../../../swift/swiftToCxx/_SwiftCxxInteroperability.h> +#elif __has_include(<../../../../../lib/swift/swiftToCxx/_SwiftCxxInteroperability.h>) +// '/usr/local/lib/clang//include/../../../../../lib/swift/swiftToCxx'. +#include <../../../../../lib/swift/swiftToCxx/_SwiftCxxInteroperability.h> +// Alternatively, allow user to find the header using additional include path into '/lib/swift'. +#elif __has_include() +#include +#endif +#pragma clang diagnostic pop +#if __has_feature(objc_modules) +#if __has_warning("-Watimport-in-framework-header") +#pragma clang diagnostic ignored "-Watimport-in-framework-header" +#endif +#endif + +#ifndef SWIFT_SWIFT_H +#define SWIFT_SWIFT_H +#ifdef SWIFT_SYMBOL +#undef SWIFT_SYMBOL +#endif +#define SWIFT_SYMBOL(usrValue) SWIFT_SYMBOL_MODULE_USR("swift", usrValue) +#ifndef SWIFT_CXX_INTEROP_HIDE_STL_OVERLAY +#include +#endif +#include +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdocumentation" +#ifndef SWIFT_PRINTED_CORE +#define SWIFT_PRINTED_CORE +namespace swift SWIFT_PRIVATE_ATTR { + +namespace _impl { + +#ifdef __cplusplus +extern "C" { +#endif + +// Swift type metadata response type. +struct MetadataResponseTy { + void * _Null_unspecified _0; + uint64_t _1; +}; +// Swift type metadata request type. +typedef uint64_t MetadataRequestTy; + +#if __cplusplus > 201402L +# define SWIFT_NOEXCEPT_FUNCTION_PTR noexcept +#else +# define SWIFT_NOEXCEPT_FUNCTION_PTR +#endif + +using ValueWitnessInitializeBufferWithCopyOfBufferTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(55882))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessDestroyTy = void(* __ptrauth_swift_value_witness_function_pointer(1272))(void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessInitializeWithCopyTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(58298))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessAssignWithCopyTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(34641))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessInitializeWithTakeTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(18648))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessAssignWithTakeTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(61402))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessGetEnumTagSinglePayloadTy = unsigned(* __ptrauth_swift_value_witness_function_pointer(24816))(const void * _Nonnull, unsigned, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessStoreEnumTagSinglePayloadTy = void(* __ptrauth_swift_value_witness_function_pointer(41169))(void * _Nonnull, unsigned, unsigned, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; + +struct ValueWitnessTable { + ValueWitnessInitializeBufferWithCopyOfBufferTy _Nonnull initializeBufferWithCopyOfBuffer; + ValueWitnessDestroyTy _Nonnull destroy; + ValueWitnessInitializeWithCopyTy _Nonnull initializeWithCopy; + ValueWitnessAssignWithCopyTy _Nonnull assignWithCopy; + ValueWitnessInitializeWithTakeTy _Nonnull initializeWithTake; + ValueWitnessAssignWithTakeTy _Nonnull assignWithTake; + ValueWitnessGetEnumTagSinglePayloadTy _Nonnull getEnumTagSinglePayload; + ValueWitnessStoreEnumTagSinglePayloadTy _Nonnull storeEnumTagSinglePayload; + size_t size; + size_t stride; + unsigned flags; + unsigned extraInhabitantCount; + + constexpr size_t getAlignment() const { return (flags & 255) + 1; } +}; + +using EnumValueWitnessGetEnumTagTy = unsigned(* __ptrauth_swift_value_witness_function_pointer(41909))(const void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using EnumValueWitnessDestructiveProjectEnumDataTy = void(* __ptrauth_swift_value_witness_function_pointer(1053))(void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using EnumValueWitnessDestructiveInjectEnumTagTy = void(* __ptrauth_swift_value_witness_function_pointer(45796))(void * _Nonnull, unsigned, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; + +struct EnumValueWitnessTable { + ValueWitnessTable vwTable; + EnumValueWitnessGetEnumTagTy _Nonnull getEnumTag; + EnumValueWitnessDestructiveProjectEnumDataTy _Nonnull destructiveProjectEnumData; + EnumValueWitnessDestructiveInjectEnumTagTy _Nonnull destructiveInjectEnumTag; +}; + +#undef SWIFT_NOEXCEPT_FUNCTION_PTR + + +// type metadata address for Bool. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSbN; +// type metadata address for Int8. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss4Int8VN; +// type metadata address for UInt8. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss5UInt8VN; +// type metadata address for Int16. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss5Int16VN; +// type metadata address for UInt16. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss6UInt16VN; +// type metadata address for Int32. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss5Int32VN; +// type metadata address for UInt32. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss6UInt32VN; +// type metadata address for Int64. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss5Int64VN; +// type metadata address for UInt64. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss6UInt64VN; +// type metadata address for Float. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSfN; +// type metadata address for Double. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSdN; +// type metadata address for OpaquePointer. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss13OpaquePointerVN; +// type metadata address for Int. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSiN; +// type metadata address for UInt. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSuN; + +#ifdef __cplusplus +} +#endif + + +} // namespace _impl + + +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSbN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss4Int8VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss5UInt8VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss5Int16VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss6UInt16VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss5Int32VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss6UInt32VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss5Int64VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss6UInt64VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSfN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSdN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss13OpaquePointerVN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSiN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSuN; + } +}; + +#pragma clang diagnostic pop + +} // namespace swift + +#endif +#ifdef __cplusplus +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { +namespace _impl { +extern "C" { +#endif + +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_returnStub_swift_void_ptr_0_8 { + void * _Nullable _1; +}; + +static SWIFT_C_INLINE_THUNK void swift_interop_returnDirect_swift_void_ptr_0_8(char * _Nonnull result, struct swift_interop_returnStub_swift_void_ptr_0_8 value) { + memcpy(result + 0, &value._1, 8); +} + +SWIFT_EXTERN struct swift_interop_returnStub_swift_void_ptr_0_8 $sS2ayxGycfC(void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // init() +SWIFT_EXTERN struct swift_interop_returnStub_swift_void_ptr_0_8 $sSa9repeating5countSayxGx_SitcfC(const void * _Nonnull repeatedValue, ptrdiff_t count, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // init(repeating:count:) +SWIFT_EXTERN void $sSa15reserveCapacityyySiF(ptrdiff_t minimumCapacity, void * _Nonnull , SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // reserveCapacity(_:) +SWIFT_EXTERN void $sSa6appendyyxnF(const void * _Nonnull newElement, void * _Nonnull , SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // append(_:) +SWIFT_EXTERN void $sSa17_customRemoveLastxSgyF(SWIFT_INDIRECT_RESULT void * _Nonnull, void * _Nonnull , SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _customRemoveLast() +SWIFT_EXTERN void $sSa6remove2atxSi_tF(SWIFT_INDIRECT_RESULT void * _Nonnull, ptrdiff_t index, void * _Nonnull , SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // remove(at:) +SWIFT_EXTERN void $sSa6insert_2atyxn_SitF(const void * _Nonnull newElement, ptrdiff_t i, void * _Nonnull , SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // insert(_:at:) +SWIFT_EXTERN void $sSa9removeAll15keepingCapacityySb_tF(bool keepCapacity, void * _Nonnull , SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // removeAll(keepingCapacity:) +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_passStub_swift_void_ptr_0_8 { + void * _Nullable _1; +}; + +static SWIFT_C_INLINE_THUNK struct swift_interop_passStub_swift_void_ptr_0_8 swift_interop_passDirect_swift_void_ptr_0_8(const char * _Nonnull value) { + struct swift_interop_passStub_swift_void_ptr_0_8 result; + memcpy(&result._1, value + 0, 8); + return result; +} + +SWIFT_EXTERN ptrdiff_t $sSa10startIndexSivg(struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN ptrdiff_t $sSa8endIndexSivg(struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN ptrdiff_t $sSa8distance4from2toS2i_SitF(ptrdiff_t start, ptrdiff_t end, struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // distance(from:to:) +SWIFT_EXTERN void $sSayxSicig(SWIFT_INDIRECT_RESULT void * _Nonnull, ptrdiff_t index, struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN ptrdiff_t $sSa5countSivg(struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN bool $sSa29_hoistableIsNativeTypeCheckedSbyF(struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // _hoistableIsNativeTypeChecked() +SWIFT_EXTERN ptrdiff_t $sSa8capacitySivg(struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // _ +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 { + uint64_t _1; + void * _Nullable _2; +}; + +static SWIFT_C_INLINE_THUNK void swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(char * _Nonnull result, struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 value) { + memcpy(result + 0, &value._1, 8); + memcpy(result + 8, &value._2, 8); +} + +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSa11descriptionSSvg(struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSa16debugDescriptionSSvg(struct swift_interop_passStub_swift_void_ptr_0_8 _self, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // _ +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_returnStub_swift_uint64_t_0_8 { + uint64_t _1; +}; + +static SWIFT_C_INLINE_THUNK void swift_interop_returnDirect_swift_uint64_t_0_8(char * _Nonnull result, struct swift_interop_returnStub_swift_uint64_t_0_8 value) { + memcpy(result + 0, &value._1, 8); +} + +SWIFT_EXTERN struct swift_interop_returnStub_swift_void_ptr_0_8 $sSa12arrayLiteralSayxGxd_tcfC(struct swift_interop_passStub_swift_void_ptr_0_8 elements, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // init(arrayLiteral:) +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_passStub_swift_uint64_t_0_8 { + uint64_t _1; +}; + +static SWIFT_C_INLINE_THUNK struct swift_interop_passStub_swift_uint64_t_0_8 swift_interop_passDirect_swift_uint64_t_0_8(const char * _Nonnull value) { + struct swift_interop_passStub_swift_uint64_t_0_8 result; + memcpy(&result._1, value + 0, 8); + return result; +} + +SWIFT_EXTERN ptrdiff_t $sSS5IndexV13encodedOffsetSivg(struct swift_interop_passStub_swift_uint64_t_0_8 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8 $sSS5IndexV13encodedOffsetABSi_tcfC(ptrdiff_t offset) SWIFT_NOEXCEPT SWIFT_CALL; // init(encodedOffset:) +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_returnStub_swift_uint64_t_0_8_uint8_t_8_9 { + uint64_t _1; + uint8_t _2; +}; + +static SWIFT_C_INLINE_THUNK void swift_interop_returnDirect_swift_uint64_t_0_8_uint8_t_8_9(char * _Nonnull result, struct swift_interop_returnStub_swift_uint64_t_0_8_uint8_t_8_9 value) { + memcpy(result + 0, &value._1, 8); + memcpy(result + 8, &value._2, 1); +} + +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 { + uint64_t _1; + void * _Nullable _2; +}; + +static SWIFT_C_INLINE_THUNK struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(const char * _Nonnull value) { + struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 result; + memcpy(&result._1, value + 0, 8); + memcpy(&result._2, value + 8, 8); + return result; +} + +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_uint8_t_8_9 $sSS5IndexV_6withinABSgAB_SStcfC(struct swift_interop_passStub_swift_uint64_t_0_8 sourcePosition, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 target) SWIFT_NOEXCEPT SWIFT_CALL; // init(_:within:) +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_uint8_t_8_9 $sSS5IndexV12samePosition2inABSgSS8UTF8ViewV_tF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 utf8, struct swift_interop_passStub_swift_uint64_t_0_8 _self) SWIFT_NOEXCEPT SWIFT_CALL; // samePosition(in:) +SWIFT_EXTERN ptrdiff_t $sSS5IndexV9hashValueSivg(struct swift_interop_passStub_swift_uint64_t_0_8 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_uint8_t_8_9 $sSS5IndexV12samePosition2inABSgSS_tF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 characters, struct swift_interop_passStub_swift_uint64_t_0_8 _self) SWIFT_NOEXCEPT SWIFT_CALL; // samePosition(in:) +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_uint8_t_8_9 $sSS5IndexV_6withinABSgAB_SS8UTF8ViewVtcfC(struct swift_interop_passStub_swift_uint64_t_0_8 idx, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 target) SWIFT_NOEXCEPT SWIFT_CALL; // init(_:within:) +struct Swift_String_Index { + _Alignas(8) char _storage[8]; +}; + +SWIFT_EXTERN void $sSqyxSgxcfC(SWIFT_INDIRECT_RESULT void * _Nonnull, const void * _Nonnull some, void * _Nonnull ) SWIFT_NOEXCEPT SWIFT_CALL; // init(_:) +SWIFT_EXTERN void $sSq17unsafelyUnwrappedxvg(SWIFT_INDIRECT_RESULT void * _Nonnull, void * _Nonnull , SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sS2SycfC(void) SWIFT_NOEXCEPT SWIFT_CALL; // init() +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8 $sSS10startIndexSS0B0Vvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8 $sSS8endIndexSS0B0Vvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN ptrdiff_t $sSS5countSivg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN ptrdiff_t $sSS8distance4from2toSiSS5IndexV_AEtF(struct swift_interop_passStub_swift_uint64_t_0_8 start, struct swift_interop_passStub_swift_uint64_t_0_8 end, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // distance(from:to:) +SWIFT_EXTERN void $sSS15reserveCapacityyySiF(ptrdiff_t n, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // reserveCapacity(_:) +SWIFT_EXTERN void $sSS6appendyySSF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 other, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // append(_:) +SWIFT_EXTERN void $sSS6append10contentsOfySS_tF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 newElements, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // append(contentsOf:) +SWIFT_EXTERN void $sSS9removeAll15keepingCapacityySb_tF(bool keepCapacity, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // removeAll(keepingCapacity:) +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_returnStub_swift_uint64_t_0_8_uint64_t_8_16 { + uint64_t _1; + uint64_t _2; +}; + +static SWIFT_C_INLINE_THUNK void swift_interop_returnDirect_swift_uint64_t_0_8_uint64_t_8_16(char * _Nonnull result, struct swift_interop_returnStub_swift_uint64_t_0_8_uint64_t_8_16 value) { + memcpy(result + 0, &value._1, 8); + memcpy(result + 8, &value._2, 8); +} + +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSS4utf8SS8UTF8ViewVvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $sSS4utf8SS8UTF8ViewVvs(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 newValue, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSS10charactersSSvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $sSS10charactersSSvs(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 newValue, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN ptrdiff_t $sSS9hashValueSivg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_void_ptr_0_8 $sSS13_nfcCodeUnitsSays5UInt8VGvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN bool $sSS7isEmptySbvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSS10lowercasedSSyF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // lowercased() +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSS10uppercasedSSyF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // uppercased() +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSS16debugDescriptionSSvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSS11descriptionSSvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $sSS5writeyySSF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 other, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // write(_:) +SWIFT_EXTERN void $sSS5_dumpyyF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _dump() +SWIFT_EXTERN bool $sSS9hasPrefixySbSSF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 prefix, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // hasPrefix(_:) +SWIFT_EXTERN bool $sSS9hasSuffixySbSSF(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 suffix, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // hasSuffix(_:) +struct swift_interop_stub_Swift_String { +#if UINTPTR_MAX == 0xFFFFFFFFFFFFFFFFu +uint64_t _1; +void * _Nullable _2; +#elif UINTPTR_MAX == 0xFFFFFFFF +uint32_t _1; +uint32_t _2; +uint32_t _3; +#endif +}; +static SWIFT_INLINE_THUNK struct swift_interop_stub_Swift_String swift_interop_passDirect_Swift_String(const char * _Nonnull value) { +struct swift_interop_stub_Swift_String result; +#if UINTPTR_MAX == 0xFFFFFFFFFFFFFFFFu +memcpy(&result._1, value, 8); +memcpy(&result._2, value + 8, 8); +#elif UINTPTR_MAX == 0xFFFFFFFF +memcpy(&result._1, value, 4); +memcpy(&result._2, value + 4, 4); +memcpy(&result._3, value + 8, 4); +#endif +return result; +} +SWIFT_EXTERN void *_Nonnull $sSS10FoundationE19_bridgeToObjectiveCSo8NSStringCyF(swift_interop_stub_Swift_String) SWIFT_NOEXCEPT SWIFT_CALL; +SWIFT_EXTERN swift_interop_stub_Swift_String $sSS10FoundationE36_unconditionallyBridgeFromObjectiveCySSSo8NSStringCSgFZ(void * _Nullable) SWIFT_NOEXCEPT SWIFT_CALL; +SWIFT_EXTERN swift_interop_stub_Swift_String $sSS7cStringSSSPys4Int8VG_tcfC(const char * _Nonnull) SWIFT_NOEXCEPT SWIFT_CALL; +struct Swift_String { + _Alignas(8) char _storage[16]; +}; + +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8 $sSS8UTF8ViewV10startIndexSS0D0Vvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8 $sSS8UTF8ViewV8endIndexSS0D0Vvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8 $sSS8UTF8ViewV5index5afterSS5IndexVAF_tF(struct swift_interop_passStub_swift_uint64_t_0_8 i, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // index(after:) +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8 $sSS8UTF8ViewV5index6beforeSS5IndexVAF_tF(struct swift_interop_passStub_swift_uint64_t_0_8 i, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // index(before:) +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8 $sSS8UTF8ViewV5index_8offsetBySS5IndexVAF_SitF(struct swift_interop_passStub_swift_uint64_t_0_8 i, ptrdiff_t n, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // index(_:offsetBy:) +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_uint8_t_8_9 $sSS8UTF8ViewV5index_8offsetBy07limitedE0SS5IndexVSgAG_SiAGtF(struct swift_interop_passStub_swift_uint64_t_0_8 i, ptrdiff_t n, struct swift_interop_passStub_swift_uint64_t_0_8 limit, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // index(_:offsetBy:limitedBy:) +SWIFT_EXTERN ptrdiff_t $sSS8UTF8ViewV8distance4from2toSiSS5IndexV_AGtF(struct swift_interop_passStub_swift_uint64_t_0_8 i, struct swift_interop_passStub_swift_uint64_t_0_8 j, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // distance(from:to:) +SWIFT_EXTERN uint8_t $sSS8UTF8ViewVys5UInt8VSS5IndexVcig(struct swift_interop_passStub_swift_uint64_t_0_8 i, struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSS8UTF8ViewV11descriptionSSvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_swift_uint64_t_0_8_void_ptr_8_16 $sSS8UTF8ViewV16debugDescriptionSSvg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN ptrdiff_t $sSS8UTF8ViewV5countSivg(struct swift_interop_passStub_swift_uint64_t_0_8_void_ptr_8_16 _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +struct Swift_UTF8View { + _Alignas(8) char _storage[16]; +}; + +} +} +} +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { + + + + + + + + + + + + + + + + + + + + + + + + + + + + +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +class SWIFT_SYMBOL("s:Sq") Optional; +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { +class SWIFT_SYMBOL("s:SS") String; +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +static inline const constexpr bool isUsableInGenericContext = true; +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +class SWIFT_SYMBOL("s:Sa") Array; +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { +namespace _impl { + +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +class _impl_Array; + +static_assert(1 <= 3, "unsupported generic requirement list for metadata func"); +// Type metadata accessor for Array +SWIFT_EXTERN swift::_impl::MetadataResponseTy $sSaMa(swift::_impl::MetadataRequestTy, void * _Nonnull) SWIFT_NOEXCEPT SWIFT_CALL; + + +} // namespace _impl + +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +class SWIFT_SYMBOL("s:Sa") Array final { +public: +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + SWIFT_INLINE_THUNK ~Array() noexcept { + auto metadata = _impl::$sSaMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->destroy(_getOpaquePointer(), metadata._0); + } + SWIFT_INLINE_THUNK Array(const Array &other) noexcept { + auto metadata = _impl::$sSaMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + _storage = swift::_impl::OpaqueStorage(vwTable->size, vwTable->getAlignment()); + vwTable->initializeWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + } + SWIFT_INLINE_THUNK Array &operator =(const Array &other) noexcept { + auto metadata = _impl::$sSaMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->assignWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + return *this; + } + SWIFT_INLINE_THUNK Array &operator =(Array &&other) = delete; + [[noreturn]] SWIFT_INLINE_PRIVATE_HELPER Array(Array &&) noexcept { + swift::_impl::_fatalError_Cxx_move_of_Swift_value_type_not_supported_yet(); + swift::_impl::_swift_stdlib_reportFatalError("swift", 5, "C++ does not support moving a Swift value yet", 45, 0); + abort(); + } +/// Creates a new, empty array. +/// This is equivalent to initializing with an empty array literal. +/// For example: +/// \code +/// var emptyArray = Array() +/// print(emptyArray.isEmpty) +/// // Prints "true" +/// +/// emptyArray = [] +/// print(emptyArray.isEmpty) +/// // Prints "true" +/// +/// \endcode + static SWIFT_INLINE_THUNK Array init() SWIFT_SYMBOL("s:S2ayxGycfc"); +/// Creates a new array containing the specified number of a single, repeated +/// value. +/// Here’s an example of creating an array initialized with five strings +/// containing the letter Z. +/// \code +/// let fiveZs = Array(repeating: "Z", count: 5) +/// print(fiveZs) +/// // Prints "["Z", "Z", "Z", "Z", "Z"]" +/// +/// \endcode\param repeatedValue The element to repeat. +/// +/// \param count The number of times to repeat the value passed in the +/// repeating parameter. count must be zero or greater. +/// + static SWIFT_INLINE_THUNK Array init(const T_0_0& repeatedValue, swift::Int count) SWIFT_SYMBOL("s:Sa9repeating5countSayxGx_Sitcfc"); +/// Reserves enough space to store the specified number of elements. +/// If you are adding a known number of elements to an array, use this method +/// to avoid multiple reallocations. This method ensures that the array has +/// unique, mutable, contiguous storage, with space allocated for at least +/// the requested number of elements. +/// Calling the reserveCapacity(_:) method on an array with bridged storage +/// triggers a copy to contiguous storage even if the existing storage +/// has room to store minimumCapacity elements. +/// For performance reasons, the size of the newly allocated storage might be +/// greater than the requested capacity. Use the array’s capacity property +/// to determine the size of the new storage. +///

Preserving an Array’s Geometric Growth Strategy

+/// If you implement a custom data structure backed by an array that grows +/// dynamically, naively calling the reserveCapacity(_:) method can lead +/// to worse than expected performance. Arrays need to follow a geometric +/// allocation pattern for appending elements to achieve amortized +/// constant-time performance. The Array type’s append(_:) and +/// append(contentsOf:) methods take care of this detail for you, but +/// reserveCapacity(_:) allocates only as much space as you tell it to +/// (padded to a round value), and no more. This avoids over-allocation, but +/// can result in insertion not having amortized constant-time performance. +/// The following code declares values, an array of integers, and the +/// addTenQuadratic() function, which adds ten more values to the values +/// array on each call. +/// \code +/// var values: [Int] = [0, 1, 2, 3] +/// +/// // Don't use 'reserveCapacity(_:)' like this +/// func addTenQuadratic() { +/// let newCount = values.count + 10 +/// values.reserveCapacity(newCount) +/// for n in values.count..reserveCapacity(_:) increases the values array’s capacity +/// by exactly 10 elements on each pass through addTenQuadratic(), which +/// is linear growth. Instead of having constant time when averaged over +/// many calls, the function may decay to performance that is linear in +/// values.count. This is almost certainly not what you want. +/// In cases like this, the simplest fix is often to simply remove the call +/// to reserveCapacity(_:), and let the append(_:) method grow the array +/// for you. +/// \code +/// func addTen() { +/// let newCount = values.count + 10 +/// for n in values.count..reserveCapacity(_:). +/// complexity: +/// O(n), where n is the number of elements in the array. +/// \param minimumCapacity The requested number of elements to store. +/// + SWIFT_INLINE_THUNK void reserveCapacity(swift::Int minimumCapacity) SWIFT_SYMBOL("s:Sa15reserveCapacityyySiF"); +/// Adds a new element at the end of the array. +/// Use this method to append a single element to the end of a mutable array. +/// \code +/// var numbers = [1, 2, 3, 4, 5] +/// numbers.append(100) +/// print(numbers) +/// // Prints "[1, 2, 3, 4, 5, 100]" +/// +/// \endcodeBecause arrays increase their allocated capacity using an exponential +/// strategy, appending a single element to an array is an O(1) operation +/// when averaged over many calls to the append(_:) method. When an array +/// has additional capacity and is not sharing its storage with another +/// instance, appending an element is O(1). When an array needs to +/// reallocate storage before appending or its storage is shared with +/// another copy, appending is O(n), where n is the length of the array. +/// complexity: +/// O(1) on average, over many calls to append(_:) on the +/// same array. +/// \param newElement The element to append to the array. +/// + SWIFT_INLINE_THUNK void append(const T_0_0& newElement) SWIFT_SYMBOL("s:Sa6appendyyxnF"); + SWIFT_INLINE_THUNK swift::Optional _customRemoveLast() SWIFT_SYMBOL("s:Sa17_customRemoveLastxSgyF"); +/// Removes and returns the element at the specified position. +/// All the elements following the specified position are moved up to +/// close the gap. +/// \code +/// var measurements: [Double] = [1.1, 1.5, 2.9, 1.2, 1.5, 1.3, 1.2] +/// let removed = measurements.remove(at: 2) +/// print(measurements) +/// // Prints "[1.1, 1.5, 1.2, 1.5, 1.3, 1.2]" +/// +/// \endcodecomplexity: +/// O(n), where n is the length of the array. +/// \param index The position of the element to remove. index must +/// be a valid index of the array. +/// +/// +/// returns: +/// The element at the specified index. + SWIFT_INLINE_THUNK T_0_0 removeAt(swift::Int index) SWIFT_SYMBOL("s:Sa6remove2atxSi_tF"); +/// Inserts a new element at the specified position. +/// The new element is inserted before the element currently at the specified +/// index. If you pass the array’s endIndex property as the index +/// parameter, the new element is appended to the array. +/// \code +/// var numbers = [1, 2, 3, 4, 5] +/// numbers.insert(100, at: 3) +/// numbers.insert(200, at: numbers.endIndex) +/// +/// print(numbers) +/// // Prints "[1, 2, 3, 100, 4, 5, 200]" +/// +/// \endcodecomplexity: +/// O(n), where n is the length of the array. If +/// i == endIndex, this method is equivalent to append(_:). +/// \param newElement The new element to insert into the array. +/// +/// \param i The position at which to insert the new element. +/// index must be a valid index of the array or equal to its endIndex +/// property. +/// + SWIFT_INLINE_THUNK void insertAt(const T_0_0& newElement, swift::Int i) SWIFT_SYMBOL("s:Sa6insert_2atyxn_SitF"); +/// Removes all elements from the array. +/// complexity: +/// O(n), where n is the length of the array. +/// \param keepCapacity Pass true to keep the existing capacity of +/// the array after removing its elements. The default value is +/// false. +/// + SWIFT_INLINE_THUNK void removeAllKeepingCapacity(bool keepCapacity) SWIFT_SYMBOL("s:Sa9removeAll15keepingCapacityySb_tF"); + SWIFT_INLINE_THUNK swift::Int getStartIndex() const SWIFT_SYMBOL("s:Sa10startIndexSivp"); + SWIFT_INLINE_THUNK swift::Int getEndIndex() const SWIFT_SYMBOL("s:Sa8endIndexSivp"); +/// Returns the distance between two indices. +/// \param start A valid index of the collection. +/// +/// \param end Another valid index of the collection. If end is equal to +/// start, the result is zero. +/// +/// +/// returns: +/// The distance between start and end. + SWIFT_INLINE_THUNK swift::Int distanceFromTo(swift::Int start, swift::Int end) const SWIFT_SYMBOL("s:Sa8distance4from2toS2i_SitF"); +SWIFT_INLINE_THUNK T_0_0 operator [](swift::Int index) const SWIFT_SYMBOL("s:SayxSicig"); + SWIFT_INLINE_THUNK swift::Int getCount() const SWIFT_SYMBOL("s:Sa5countSivp"); +/// Returns true if the array is native and does not need a deferred +/// type check. May be hoisted by the optimizer, which means its +/// results may be stale by the time they are used if there is an +/// inout violation in user code. + SWIFT_INLINE_THUNK bool _hoistableIsNativeTypeChecked() const SWIFT_SYMBOL("s:Sa29_hoistableIsNativeTypeCheckedSbyF"); + SWIFT_INLINE_THUNK swift::Int getCapacity() const SWIFT_SYMBOL("s:Sa8capacitySivp"); + SWIFT_INLINE_THUNK String getDescription() const SWIFT_SYMBOL("s:Sa11descriptionSSvp"); + SWIFT_INLINE_THUNK String getDebugDescription() const SWIFT_SYMBOL("s:Sa16debugDescriptionSSvp"); +/// Creates an array from the given array literal. +/// Do not call this initializer directly. It is used by the compiler +/// when you use an array literal. Instead, create a new array by using an +/// array literal as its value. To do this, enclose a comma-separated list of +/// values in square brackets. +/// Here, an array of strings is created from an array literal holding +/// only strings. +/// \code +/// let ingredients = ["cocoa beans", "sugar", "cocoa butter", "salt"] +/// +/// \endcode\param elements A variadic list of elements of the new array. +/// + static SWIFT_INLINE_THUNK Array init(const Array& elements) SWIFT_SYMBOL("s:Sa12arrayLiteralSayxGxd_tcfc"); +private: + SWIFT_INLINE_THUNK Array(swift::_impl::ValueWitnessTable * _Nonnull vwTable) noexcept : _storage(vwTable->size, vwTable->getAlignment()) {} + static SWIFT_INLINE_THUNK Array _make() noexcept { + auto metadata = _impl::$sSaMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + return Array(vwTable); + } + SWIFT_INLINE_THUNK const char * _Nonnull _getOpaquePointer() const noexcept { return _storage.getOpaquePointer(); } + SWIFT_INLINE_THUNK char * _Nonnull _getOpaquePointer() noexcept { return _storage.getOpaquePointer(); } + + swift::_impl::OpaqueStorage _storage; + friend class _impl::_impl_Array; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-identifier" + typedef char $sSayxGD; + static inline constexpr $sSayxGD __swift_mangled_name = 0; +#pragma clang diagnostic pop +#pragma clang diagnostic pop +}; + +namespace _impl { + +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +class _impl_Array { +public: +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + static SWIFT_INLINE_THUNK char * _Nonnull getOpaquePointer(Array &object) { return object._getOpaquePointer(); } + static SWIFT_INLINE_THUNK const char * _Nonnull getOpaquePointer(const Array &object) { return object._getOpaquePointer(); } + template + static SWIFT_INLINE_PRIVATE_HELPER Array returnNewValue(T callable) { + auto result = Array::_make(); + callable(result._getOpaquePointer()); + return result; + } + static SWIFT_INLINE_THUNK void initializeWithTake(char * _Nonnull destStorage, char * _Nonnull srcStorage) { + auto metadata = _impl::$sSaMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithTake(destStorage, srcStorage, metadata._0); + } +}; + +} // namespace _impl + +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +struct TypeMetadataTrait> { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return swift::_impl::$sSaMa(0, swift::TypeMetadataTrait::getTypeMetadata())._0; + } +}; +namespace _impl{ +} // namespace +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +class SWIFT_SYMBOL("s:SS8UTF8ViewV") UTF8View; +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +static inline const constexpr bool isUsableInGenericContext = true; +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { +class SWIFT_SYMBOL("s:SS5IndexV") String_Index; +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +static inline const constexpr bool isUsableInGenericContext = true; +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { +namespace _impl { + +class _impl_String_Index; + +// Type metadata accessor for Index +SWIFT_EXTERN swift::_impl::MetadataResponseTy $sSS5IndexVMa(swift::_impl::MetadataRequestTy) SWIFT_NOEXCEPT SWIFT_CALL; + + +} // namespace _impl + +class SWIFT_SYMBOL("s:SS5IndexV") String_Index final { +public: + SWIFT_INLINE_THUNK ~String_Index() noexcept { + auto metadata = _impl::$sSS5IndexVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->destroy(_getOpaquePointer(), metadata._0); + } + SWIFT_INLINE_THUNK String_Index(const String_Index &other) noexcept { + auto metadata = _impl::$sSS5IndexVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + } + SWIFT_INLINE_THUNK String_Index &operator =(const String_Index &other) noexcept { + auto metadata = _impl::$sSS5IndexVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->assignWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + return *this; + } + SWIFT_INLINE_THUNK String_Index &operator =(String_Index &&other) = delete; + [[noreturn]] SWIFT_INLINE_PRIVATE_HELPER String_Index(String_Index &&) noexcept { + swift::_impl::_fatalError_Cxx_move_of_Swift_value_type_not_supported_yet(); + swift::_impl::_swift_stdlib_reportFatalError("swift", 5, "C++ does not support moving a Swift value yet", 45, 0); + abort(); + } + SWIFT_INLINE_THUNK swift::Int getEncodedOffset() const SWIFT_SYMBOL("s:SS5IndexV13encodedOffsetSivp"); +/// Creates a new index at the specified code unit offset. +/// \param offset An offset in code units. +/// + static SWIFT_INLINE_THUNK String_Index init(swift::Int offset) SWIFT_SYMBOL("s:SS5IndexV13encodedOffsetABSi_tcfc"); +/// Creates an index in the given string that corresponds exactly to the +/// specified position. +/// If the index passed as sourcePosition represents the start of an +/// extended grapheme cluster—the element type of a string—then the +/// initializer succeeds. +/// The following example converts the position of the Unicode scalar "e" +/// into its corresponding position in the string. The character at that +/// position is the composed "é" character. +/// \code +/// let cafe = "Cafe\u{0301}" +/// print(cafe) +/// // Prints "Café" +/// +/// let scalarsIndex = cafe.unicodeScalars.firstIndex(of: "e")! +/// let stringIndex = String.Index(scalarsIndex, within: cafe)! +/// +/// print(cafe[...stringIndex]) +/// // Prints "Café" +/// +/// \endcodeIf the index passed as sourcePosition doesn’t have an exact +/// corresponding position in target, the result of the initializer is +/// nil. For example, an attempt to convert the position of the combining +/// acute accent ("\u{0301}") fails. Combining Unicode scalars do not have +/// their own position in a string. +/// \code +/// let nextScalarsIndex = cafe.unicodeScalars.index(after: scalarsIndex) +/// let nextStringIndex = String.Index(nextScalarsIndex, within: cafe) +/// +/// print(nextStringIndex) +/// // Prints "nil" +/// +/// \endcode\param sourcePosition A position in a view of the target parameter. +/// sourcePosition must be a valid index of at least one of the views +/// of target. +/// +/// \param target The string referenced by the resulting index. +/// + static SWIFT_INLINE_THUNK swift::Optional init(const String_Index& sourcePosition, const String& target) SWIFT_SYMBOL("s:SS5IndexV_6withinABSgAB_SStcfc"); +/// Returns the position in the given UTF-8 view that corresponds exactly to +/// this index. +/// This example first finds the position of the character "é", and then +/// uses this method find the same position in the string’s utf8 view. +/// \code +/// let cafe = "Café" +/// if let i = cafe.firstIndex(of: "é") { +/// let j = i.samePosition(in: cafe.utf8)! +/// print(Array(cafe.utf8[j...])) +/// } +/// // Prints "[195, 169]" +/// +/// \endcode\param utf8 The view to use for the index conversion. This index +/// must be a valid index of at least one view of the string shared by +/// utf8. +/// +/// +/// returns: +/// The position in utf8 that corresponds exactly to this index. +/// If this index does not have an exact corresponding position in utf8, +/// this method returns nil. For example, an attempt to convert the +/// position of a UTF-16 trailing surrogate returns nil. + SWIFT_INLINE_THUNK swift::Optional samePositionIn(const UTF8View& utf8) const SWIFT_SYMBOL("s:SS5IndexV12samePosition2inABSgSS8UTF8ViewV_tF"); + SWIFT_INLINE_THUNK swift::Int getHashValue() const SWIFT_SYMBOL("s:SS5IndexV9hashValueSivp"); +/// Returns the position in the given string that corresponds exactly to this +/// index. +/// This example first finds the position of a space (UTF-8 code point 32) +/// in a string’s utf8 view and then uses this method find the same position +/// in the string. +/// \code +/// let cafe = "Café 🍵" +/// let i = cafe.unicodeScalars.firstIndex(of: "🍵")! +/// let j = i.samePosition(in: cafe)! +/// print(cafe[j...]) +/// // Prints "🍵" +/// +/// \endcode\param characters The string to use for the index conversion. +/// This index must be a valid index of at least one view of characters. +/// +/// +/// returns: +/// The position in characters that corresponds exactly to +/// this index. If this index does not have an exact corresponding +/// position in characters, this method returns nil. For example, +/// an attempt to convert the position of a UTF-8 continuation byte +/// returns nil. + SWIFT_INLINE_THUNK swift::Optional samePositionIn(const String& characters) const SWIFT_SYMBOL("s:SS5IndexV12samePosition2inABSgSS_tF"); +/// Creates an index in the given UTF-8 view that corresponds exactly to the +/// specified UTF16View position. +/// The following example finds the position of a space in a string’s utf16 +/// view and then converts that position to an index in the string’s +/// utf8 view. +/// \code +/// let cafe = "Café 🍵" +/// +/// let utf16Index = cafe.utf16.firstIndex(of: 32)! +/// let utf8Index = String.UTF8View.Index(utf16Index, within: cafe.utf8)! +/// +/// print(Array(cafe.utf8[..utf16Index doesn’t have an exact +/// corresponding position in utf8, the result of the initializer is +/// nil. For example, because UTF-8 and UTF-16 represent high Unicode code +/// points differently, an attempt to convert the position of the trailing +/// surrogate of a UTF-16 surrogate pair fails. +/// The next example attempts to convert the indices of the two UTF-16 code +/// points that represent the teacup emoji ("🍵"). The index of the lead +/// surrogate is successfully converted to a position in utf8, but the +/// index of the trailing surrogate is not. +/// \code +/// let emojiHigh = cafe.utf16.index(after: utf16Index) +/// print(String.UTF8View.Index(emojiHigh, within: cafe.utf8)) +/// // Prints "Optional(String.Index(...))" +/// +/// let emojiLow = cafe.utf16.index(after: emojiHigh) +/// print(String.UTF8View.Index(emojiLow, within: cafe.utf8)) +/// // Prints "nil" +/// +/// \endcode\param sourcePosition A position in a String or one of its views. +/// +/// \param target The UTF8View in which to find the new position. +/// + static SWIFT_INLINE_THUNK swift::Optional init(const String_Index& idx, const UTF8View& target) SWIFT_SYMBOL("s:SS5IndexV_6withinABSgAB_SS8UTF8ViewVtcfc"); +private: + SWIFT_INLINE_THUNK String_Index() noexcept {} + static SWIFT_INLINE_THUNK String_Index _make() noexcept { return String_Index(); } + SWIFT_INLINE_THUNK const char * _Nonnull _getOpaquePointer() const noexcept { return _storage; } + SWIFT_INLINE_THUNK char * _Nonnull _getOpaquePointer() noexcept { return _storage; } + + alignas(8) char _storage[8]; + friend class _impl::_impl_String_Index; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-identifier" + typedef char $sSS5IndexVD; + static inline constexpr $sSS5IndexVD __swift_mangled_name = 0; +#pragma clang diagnostic pop +#pragma clang diagnostic pop +}; + +namespace _impl { + +class _impl_String_Index { +public: + static SWIFT_INLINE_THUNK char * _Nonnull getOpaquePointer(String_Index &object) { return object._getOpaquePointer(); } + static SWIFT_INLINE_THUNK const char * _Nonnull getOpaquePointer(const String_Index &object) { return object._getOpaquePointer(); } + template + static SWIFT_INLINE_PRIVATE_HELPER String_Index returnNewValue(T callable) { + auto result = String_Index::_make(); + callable(result._getOpaquePointer()); + return result; + } + static SWIFT_INLINE_THUNK void initializeWithTake(char * _Nonnull destStorage, char * _Nonnull srcStorage) { + auto metadata = _impl::$sSS5IndexVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithTake(destStorage, srcStorage, metadata._0); + } +}; + +} // namespace _impl + +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return swift::_impl::$sSS5IndexVMa(0)._0; + } +}; +namespace _impl{ +template<> +static inline const constexpr bool isValueType = true; +template<> +struct implClassFor { using type = swift::_impl::_impl_String_Index; }; +} // namespace +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +/// A type that represents either a wrapped value or the absence of a value. +/// You use the Optional type whenever you use optional values, even if you +/// never type the word Optional. Swift’s type system usually shows the +/// wrapped type’s name with a trailing question mark (?) instead of showing +/// the full type name. For example, if a variable has the type Int?, that’s +/// just another way of writing Optional. The shortened form is +/// preferred for ease of reading and writing code. +/// The types of shortForm and longForm in the following code sample are +/// the same: +/// \code +/// let shortForm: Int? = Int("42") +/// let longForm: Optional = Int("42") +/// +/// \endcodeThe Optional type is an enumeration with two cases. Optional.none is +/// equivalent to the nil literal. Optional.some(Wrapped) stores a wrapped +/// value. For example: +/// \code +/// let number: Int? = Optional.some(42) +/// let noNumber: Int? = Optional.none +/// print(noNumber == nil) +/// // Prints "true" +/// +/// \endcodeYou must unwrap the value of an Optional instance before you can use it +/// in many contexts. Because Swift provides several ways to safely unwrap +/// optional values, you can choose the one that helps you write clear, +/// concise code. +/// The following examples use this dictionary of image names and file paths: +/// \code +/// let imagePaths = ["star": "/glyphs/star.png", +/// "portrait": "/images/content/portrait.jpg", +/// "spacer": "/images/shared/spacer.gif"] +/// +/// \endcodeGetting a dictionary’s value using a key returns an optional value, so +/// imagePaths["star"] has type Optional or, written in the +/// preferred manner, String?. +///

Optional Binding

+/// To conditionally bind the wrapped value of an Optional instance to a new +/// variable, use one of the optional binding control structures, including +/// if let, guard let, and switch. +/// \code +/// if let starPath = imagePaths["star"] { +/// print("The star image is at '\(starPath)'") +/// } else { +/// print("Couldn't find the star image") +/// } +/// // Prints "The star image is at '/glyphs/star.png'" +/// +/// \endcode

Optional Chaining

+/// To safely access the properties and methods of a wrapped instance, use the +/// postfix optional chaining operator (postfix ?). The following example uses +/// optional chaining to access the hasSuffix(_:) method on a String? +/// instance. +/// \code +/// if imagePaths["star"]?.hasSuffix(".png") == true { +/// print("The star image is in PNG format") +/// } +/// // Prints "The star image is in PNG format" +/// +/// \endcode

Using the Nil-Coalescing Operator

+/// Use the nil-coalescing operator (??) to supply a default value in case +/// the Optional instance is nil. Here a default path is supplied for an +/// image that is missing from imagePaths. +/// \code +/// let defaultImagePath = "/images/default.png" +/// let heartPath = imagePaths["heart"] ?? defaultImagePath +/// print(heartPath) +/// // Prints "/images/default.png" +/// +/// \endcodeThe ?? operator also works with another Optional instance on the +/// right-hand side. As a result, you can chain multiple ?? operators +/// together. +/// \code +/// let shapePath = imagePaths["cir"] ?? imagePaths["squ"] ?? defaultImagePath +/// print(shapePath) +/// // Prints "/images/default.png" +/// +/// \endcode

Unconditional Unwrapping

+/// When you’re certain that an instance of Optional contains a value, you +/// can unconditionally unwrap the value by using the forced +/// unwrap operator (postfix !). For example, the result of the failable Int +/// initializer is unconditionally unwrapped in the example below. +/// \code +/// let number = Int("42")! +/// print(number) +/// // Prints "42" +/// +/// \endcodeYou can also perform unconditional optional chaining by using the postfix +/// ! operator. +/// \code +/// let isPNG = imagePaths["star"]!.hasSuffix(".png") +/// print(isPNG) +/// // Prints "true" +/// +/// \endcodeUnconditionally unwrapping a nil instance with ! triggers a runtime +/// error. +namespace _impl { + +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +class _impl_Optional; + +static_assert(1 <= 3, "unsupported generic requirement list for metadata func"); +// Type metadata accessor for Optional +SWIFT_EXTERN swift::_impl::MetadataResponseTy $sSqMa(swift::_impl::MetadataRequestTy, void * _Nonnull) SWIFT_NOEXCEPT SWIFT_CALL; + +// Tags for resilient enum Optional +extern "C" { +extern unsigned $sSq4noneyxSgABmlFWC; +extern unsigned $sSq4someyxSgxcABmlFWC; +} + +} // namespace _impl + +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +class SWIFT_SYMBOL("s:Sq") Optional final { +public: +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + SWIFT_INLINE_THUNK ~Optional() noexcept { + auto metadata = _impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->destroy(_getOpaquePointer(), metadata._0); + } + SWIFT_INLINE_THUNK Optional(const Optional &other) noexcept { + auto metadata = _impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + _storage = swift::_impl::OpaqueStorage(vwTable->size, vwTable->getAlignment()); + vwTable->initializeWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + } + SWIFT_INLINE_THUNK Optional &operator =(const Optional &other) noexcept { + auto metadata = _impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->assignWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + return *this; + } + SWIFT_INLINE_THUNK Optional &operator =(Optional &&other) = delete; + [[noreturn]] SWIFT_INLINE_PRIVATE_HELPER Optional(Optional &&) noexcept { + swift::_impl::_fatalError_Cxx_move_of_Swift_value_type_not_supported_yet(); + swift::_impl::_swift_stdlib_reportFatalError("swift", 5, "C++ does not support moving a Swift value yet", 45, 0); + abort(); + } + + enum class cases { + some SWIFT_SYMBOL("s:Sq4someyxSgxcABmlF"), + none SWIFT_SYMBOL("s:Sq4noneyxSgABmlF") + }; + +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" // allow use of inline static data member + inline const static struct _impl_some { // impl struct for case some + SWIFT_INLINE_THUNK constexpr operator cases() const { + return cases::some; + } + SWIFT_INLINE_THUNK Optional operator()(const T_0_0& val) const; + } some SWIFT_SYMBOL("s:Sq4someyxSgxcABmlF"); + SWIFT_INLINE_THUNK bool isSome() const; + SWIFT_INLINE_THUNK T_0_0 getSome() const; + + inline const static struct _impl_none { // impl struct for case none + SWIFT_INLINE_THUNK constexpr operator cases() const { + return cases::none; + } + SWIFT_INLINE_THUNK Optional operator()() const; + } none SWIFT_SYMBOL("s:Sq4noneyxSgABmlF"); + SWIFT_INLINE_THUNK bool isNone() const; + +#pragma clang diagnostic pop + SWIFT_INLINE_THUNK operator cases() const { + switch (_getEnumTag()) { + case 0: return cases::some; + case 1: return cases::none; + default: abort(); + } + } + +/// Creates an instance that stores the given value. + static SWIFT_INLINE_THUNK swift::Optional init(const T_0_0& some_) SWIFT_SYMBOL("s:SqyxSgxcfc"); + SWIFT_INLINE_THUNK T_0_0 getUnsafelyUnwrapped() const SWIFT_SYMBOL("s:Sq17unsafelyUnwrappedxvp"); +#define SWIFT_CXX_INTEROP_OPTIONAL_MIXIN +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wnon-modular-include-in-framework-module" +// Look for the C++ interop support header relative to clang's resource dir: +// '/usr/lib/clang//include/../../../swift/swiftToCxx'. +#if __has_include(<../../../swift/swiftToCxx/_SwiftStdlibCxxOverlay.h>) +#include <../../../swift/swiftToCxx/_SwiftStdlibCxxOverlay.h> +#elif __has_include(<../../../../../lib/swift/swiftToCxx/_SwiftStdlibCxxOverlay.h>) +// '/usr/local/lib/clang//include/../../../../../lib/swift/swiftToCxx'. +#include <../../../../../lib/swift/swiftToCxx/_SwiftStdlibCxxOverlay.h> +// Alternatively, allow user to find the header using additional include path into '/lib/swift'. +#elif __has_include() +#include +#endif +#pragma clang diagnostic pop +private: + SWIFT_INLINE_THUNK Optional(swift::_impl::ValueWitnessTable * _Nonnull vwTable) noexcept : _storage(vwTable->size, vwTable->getAlignment()) {} + static SWIFT_INLINE_THUNK Optional _make() noexcept { + auto metadata = _impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + return Optional(vwTable); + } + SWIFT_INLINE_THUNK const char * _Nonnull _getOpaquePointer() const noexcept { return _storage.getOpaquePointer(); } + SWIFT_INLINE_THUNK char * _Nonnull _getOpaquePointer() noexcept { return _storage.getOpaquePointer(); } + + SWIFT_INLINE_THUNK char * _Nonnull _destructiveProjectEnumData() noexcept { + auto metadata = _impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + const auto *enumVWTable = reinterpret_cast(vwTable); + enumVWTable->destructiveProjectEnumData(_getOpaquePointer(), metadata._0); + return _getOpaquePointer(); + } + SWIFT_INLINE_THUNK void _destructiveInjectEnumTag(unsigned tag) noexcept { + auto metadata = _impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + const auto *enumVWTable = reinterpret_cast(vwTable); + enumVWTable->destructiveInjectEnumTag(_getOpaquePointer(), tag, metadata._0); + } + SWIFT_INLINE_THUNK unsigned _getEnumTag() const noexcept { + auto metadata = _impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + const auto *enumVWTable = reinterpret_cast(vwTable); + return enumVWTable->getEnumTag(_getOpaquePointer(), metadata._0); + } + swift::_impl::OpaqueStorage _storage; + friend class _impl::_impl_Optional; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-identifier" + typedef char $sxSgD; + static inline constexpr $sxSgD __swift_mangled_name = 0; +#pragma clang diagnostic pop +#pragma clang diagnostic pop +}; + +namespace _impl { + +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +class _impl_Optional { +public: +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + static SWIFT_INLINE_THUNK char * _Nonnull getOpaquePointer(Optional &object) { return object._getOpaquePointer(); } + static SWIFT_INLINE_THUNK const char * _Nonnull getOpaquePointer(const Optional &object) { return object._getOpaquePointer(); } + template + static SWIFT_INLINE_PRIVATE_HELPER Optional returnNewValue(T callable) { + auto result = Optional::_make(); + callable(result._getOpaquePointer()); + return result; + } + static SWIFT_INLINE_THUNK void initializeWithTake(char * _Nonnull destStorage, char * _Nonnull srcStorage) { + auto metadata = _impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata()); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithTake(destStorage, srcStorage, metadata._0); + } +}; + +} // namespace _impl + +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +struct TypeMetadataTrait> { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return swift::_impl::$sSqMa(0, swift::TypeMetadataTrait::getTypeMetadata())._0; + } +}; +namespace _impl{ +} // namespace +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +namespace _impl { + +class _impl_String; + +// Type metadata accessor for String +SWIFT_EXTERN swift::_impl::MetadataResponseTy $sSSMa(swift::_impl::MetadataRequestTy) SWIFT_NOEXCEPT SWIFT_CALL; + + +} // namespace _impl + +class SWIFT_SYMBOL("s:SS") String final { +public: + SWIFT_INLINE_THUNK ~String() noexcept { + auto metadata = _impl::$sSSMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->destroy(_getOpaquePointer(), metadata._0); + } + SWIFT_INLINE_THUNK String(const String &other) noexcept { + auto metadata = _impl::$sSSMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + } + SWIFT_INLINE_THUNK String &operator =(const String &other) noexcept { + auto metadata = _impl::$sSSMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->assignWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + return *this; + } + SWIFT_INLINE_THUNK String &operator =(String &&other) = delete; + [[noreturn]] SWIFT_INLINE_PRIVATE_HELPER String(String &&) noexcept { + swift::_impl::_fatalError_Cxx_move_of_Swift_value_type_not_supported_yet(); + swift::_impl::_swift_stdlib_reportFatalError("swift", 5, "C++ does not support moving a Swift value yet", 45, 0); + abort(); + } +/// Creates an empty string. +/// Using this initializer is equivalent to initializing a string with an +/// empty string literal. +/// \code +/// let empty = "" +/// let alsoEmpty = String() +/// +/// \endcode + static SWIFT_INLINE_THUNK String init() SWIFT_SYMBOL("s:S2Sycfc"); + SWIFT_INLINE_THUNK String_Index getStartIndex() const SWIFT_SYMBOL("s:SS10startIndexSS0B0Vvp"); + SWIFT_INLINE_THUNK String_Index getEndIndex() const SWIFT_SYMBOL("s:SS8endIndexSS0B0Vvp"); + SWIFT_INLINE_THUNK swift::Int getCount() const SWIFT_SYMBOL("s:SS5countSivp"); +/// Returns the distance between two indices. +/// complexity: +/// O(n), where n is the resulting distance. +/// \param start A valid index of the collection. +/// +/// \param end Another valid index of the collection. If end is equal to +/// start, the result is zero. +/// +/// +/// returns: +/// The distance between start and end. + SWIFT_INLINE_THUNK swift::Int distanceFromTo(const String_Index& start, const String_Index& end) const SWIFT_SYMBOL("s:SS8distance4from2toSiSS5IndexV_AEtF"); +/// Reserves enough space in the string’s underlying storage to store the +/// specified number of ASCII characters. +/// Because each character in a string can require more than a single ASCII +/// character’s worth of storage, additional allocation may be necessary +/// when adding characters to a string after a call to +/// reserveCapacity(_:). +/// complexity: +/// O(n) +/// \param n The minimum number of ASCII character’s worth of storage +/// to allocate. +/// + SWIFT_INLINE_THUNK void reserveCapacity(swift::Int n) SWIFT_SYMBOL("s:SS15reserveCapacityyySiF"); +/// Appends the given string to this string. +/// The following example builds a customized greeting by using the +/// append(_:) method: +/// \code +/// var greeting = "Hello, " +/// if let name = getUserName() { +/// greeting.append(name) +/// } else { +/// greeting.append("friend") +/// } +/// print(greeting) +/// // Prints "Hello, friend" +/// +/// \endcode\param other Another string. +/// + SWIFT_INLINE_THUNK void append(const String& other) SWIFT_SYMBOL("s:SS6appendyySSF"); + SWIFT_INLINE_THUNK void appendContentsOf(const String& newElements) SWIFT_SYMBOL("s:SS6append10contentsOfySS_tF"); +/// Replaces this string with the empty string. +/// Calling this method invalidates any existing indices for use with this +/// string. +/// \param keepCapacity Pass true to prevent the release of the +/// string’s allocated storage. Retaining the storage can be a useful +/// optimization when you’re planning to grow the string again. The +/// default value is false. +/// + SWIFT_INLINE_THUNK void removeAllKeepingCapacity(bool keepCapacity) SWIFT_SYMBOL("s:SS9removeAll15keepingCapacityySb_tF"); + SWIFT_INLINE_THUNK UTF8View getUtf8() const SWIFT_SYMBOL("s:SS4utf8SS8UTF8ViewVvp"); + SWIFT_INLINE_THUNK void setUtf8(const UTF8View& newValue) SWIFT_SYMBOL("s:SS4utf8SS8UTF8ViewVvp"); + SWIFT_INLINE_THUNK String getCharacters() const SWIFT_SYMBOL("s:SS10charactersSSvp"); + SWIFT_INLINE_THUNK void setCharacters(const String& newValue) SWIFT_SYMBOL("s:SS10charactersSSvp"); + SWIFT_INLINE_THUNK swift::Int getHashValue() const SWIFT_SYMBOL("s:SS9hashValueSivp"); + SWIFT_INLINE_THUNK Array get_nfcCodeUnits() const SWIFT_SYMBOL("s:SS13_nfcCodeUnitsSays5UInt8VGvp"); + SWIFT_INLINE_THUNK bool isEmpty() const SWIFT_SYMBOL("s:SS7isEmptySbvp"); +/// Returns a lowercase version of the string. +/// Here’s an example of transforming a string to all lowercase letters. +/// \code +/// let cafe = "BBQ Café 🍵" +/// print(cafe.lowercased()) +/// // Prints "bbq café 🍵" +/// +/// \endcodecomplexity: +/// O(n) +/// +/// returns: +/// A lowercase copy of the string. + SWIFT_INLINE_THUNK String lowercased() const SWIFT_SYMBOL("s:SS10lowercasedSSyF"); +/// Returns an uppercase version of the string. +/// The following example transforms a string to uppercase letters: +/// \code +/// let cafe = "Café 🍵" +/// print(cafe.uppercased()) +/// // Prints "CAFÉ 🍵" +/// +/// \endcodecomplexity: +/// O(n) +/// +/// returns: +/// An uppercase copy of the string. + SWIFT_INLINE_THUNK String uppercased() const SWIFT_SYMBOL("s:SS10uppercasedSSyF"); + SWIFT_INLINE_THUNK String getDebugDescription() const SWIFT_SYMBOL("s:SS16debugDescriptionSSvp"); + SWIFT_INLINE_THUNK String getDescription() const SWIFT_SYMBOL("s:SS11descriptionSSvp"); +/// Appends the given string to this string. +/// \param other A string to append. +/// + SWIFT_INLINE_THUNK void write(const String& other) SWIFT_SYMBOL("s:SS5writeyySSF"); + SWIFT_INLINE_THUNK void _dump() const SWIFT_SYMBOL("s:SS5_dumpyyF"); + SWIFT_INLINE_THUNK bool hasPrefix(const String& prefix) const SWIFT_SYMBOL("s:SS9hasPrefixySbSSF"); + SWIFT_INLINE_THUNK bool hasSuffix(const String& suffix) const SWIFT_SYMBOL("s:SS9hasSuffixySbSSF"); +#if defined(__OBJC__) + SWIFT_INLINE_THUNK operator NSString * _Nonnull () const noexcept { + return (__bridge_transfer NSString *)(_impl::$sSS10FoundationE19_bridgeToObjectiveCSo8NSStringCyF(_impl::swift_interop_passDirect_Swift_String(_getOpaquePointer()))); + } +static SWIFT_INLINE_THUNK String init(NSString * _Nonnull nsString) noexcept { + auto result = _make(); + auto res = _impl::$sSS10FoundationE36_unconditionallyBridgeFromObjectiveCySSSo8NSStringCSgFZ((__bridge void *)nsString); + memcpy(result._getOpaquePointer(), &res, sizeof(res)); + return result; + } + +#endif +#define SWIFT_CXX_INTEROP_STRING_MIXIN +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wnon-modular-include-in-framework-module" +// Look for the C++ interop support header relative to clang's resource dir: +// '/usr/lib/clang//include/../../../swift/swiftToCxx'. +#if __has_include(<../../../swift/swiftToCxx/_SwiftStdlibCxxOverlay.h>) +#include <../../../swift/swiftToCxx/_SwiftStdlibCxxOverlay.h> +#elif __has_include(<../../../../../lib/swift/swiftToCxx/_SwiftStdlibCxxOverlay.h>) +// '/usr/local/lib/clang//include/../../../../../lib/swift/swiftToCxx'. +#include <../../../../../lib/swift/swiftToCxx/_SwiftStdlibCxxOverlay.h> +// Alternatively, allow user to find the header using additional include path into '/lib/swift'. +#elif __has_include() +#include +#endif +#pragma clang diagnostic pop +private: + SWIFT_INLINE_THUNK String() noexcept {} + static SWIFT_INLINE_THUNK String _make() noexcept { return String(); } + SWIFT_INLINE_THUNK const char * _Nonnull _getOpaquePointer() const noexcept { return _storage; } + SWIFT_INLINE_THUNK char * _Nonnull _getOpaquePointer() noexcept { return _storage; } + + alignas(8) char _storage[16]; + friend class _impl::_impl_String; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-identifier" + typedef char $sSSD; + static inline constexpr $sSSD __swift_mangled_name = 0; +#pragma clang diagnostic pop +#pragma clang diagnostic pop +}; + +namespace _impl { + +class _impl_String { +public: + static SWIFT_INLINE_THUNK char * _Nonnull getOpaquePointer(String &object) { return object._getOpaquePointer(); } + static SWIFT_INLINE_THUNK const char * _Nonnull getOpaquePointer(const String &object) { return object._getOpaquePointer(); } + template + static SWIFT_INLINE_PRIVATE_HELPER String returnNewValue(T callable) { + auto result = String::_make(); + callable(result._getOpaquePointer()); + return result; + } + static SWIFT_INLINE_THUNK void initializeWithTake(char * _Nonnull destStorage, char * _Nonnull srcStorage) { + auto metadata = _impl::$sSSMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithTake(destStorage, srcStorage, metadata._0); + } +}; + +} // namespace _impl + +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return swift::_impl::$sSSMa(0)._0; + } +}; +namespace _impl{ +template<> +static inline const constexpr bool isValueType = true; +template<> +struct implClassFor { using type = swift::_impl::_impl_String; }; +} // namespace +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +namespace _impl { + +class _impl_UTF8View; + +// Type metadata accessor for UTF8View +SWIFT_EXTERN swift::_impl::MetadataResponseTy $sSS8UTF8ViewVMa(swift::_impl::MetadataRequestTy) SWIFT_NOEXCEPT SWIFT_CALL; + + +} // namespace _impl + +class SWIFT_SYMBOL("s:SS8UTF8ViewV") UTF8View final { +public: + SWIFT_INLINE_THUNK ~UTF8View() noexcept { + auto metadata = _impl::$sSS8UTF8ViewVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->destroy(_getOpaquePointer(), metadata._0); + } + SWIFT_INLINE_THUNK UTF8View(const UTF8View &other) noexcept { + auto metadata = _impl::$sSS8UTF8ViewVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + } + SWIFT_INLINE_THUNK UTF8View &operator =(const UTF8View &other) noexcept { + auto metadata = _impl::$sSS8UTF8ViewVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->assignWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + return *this; + } + SWIFT_INLINE_THUNK UTF8View &operator =(UTF8View &&other) = delete; + [[noreturn]] SWIFT_INLINE_PRIVATE_HELPER UTF8View(UTF8View &&) noexcept { + swift::_impl::_fatalError_Cxx_move_of_Swift_value_type_not_supported_yet(); + swift::_impl::_swift_stdlib_reportFatalError("swift", 5, "C++ does not support moving a Swift value yet", 45, 0); + abort(); + } + SWIFT_INLINE_THUNK String_Index getStartIndex() const SWIFT_SYMBOL("s:SS8UTF8ViewV10startIndexSS0D0Vvp"); + SWIFT_INLINE_THUNK String_Index getEndIndex() const SWIFT_SYMBOL("s:SS8UTF8ViewV8endIndexSS0D0Vvp"); +/// Returns the next consecutive position after i. +/// precondition: +/// The next position is representable. + SWIFT_INLINE_THUNK String_Index indexAfter(const String_Index& i) const SWIFT_SYMBOL("s:SS8UTF8ViewV5index5afterSS5IndexVAF_tF"); + SWIFT_INLINE_THUNK String_Index indexBefore(const String_Index& i) const SWIFT_SYMBOL("s:SS8UTF8ViewV5index6beforeSS5IndexVAF_tF"); + SWIFT_INLINE_THUNK String_Index indexOffsetBy(const String_Index& i, swift::Int n) const SWIFT_SYMBOL("s:SS8UTF8ViewV5index_8offsetBySS5IndexVAF_SitF"); + SWIFT_INLINE_THUNK swift::Optional indexOffsetByLimitedBy(const String_Index& i, swift::Int n, const String_Index& limit) const SWIFT_SYMBOL("s:SS8UTF8ViewV5index_8offsetBy07limitedE0SS5IndexVSgAG_SiAGtF"); + SWIFT_INLINE_THUNK swift::Int distanceFromTo(const String_Index& i, const String_Index& j) const SWIFT_SYMBOL("s:SS8UTF8ViewV8distance4from2toSiSS5IndexV_AGtF"); +SWIFT_INLINE_THUNK uint8_t operator [](const String_Index& i) const SWIFT_SYMBOL("s:SS8UTF8ViewVys5UInt8VSS5IndexVcig"); + SWIFT_INLINE_THUNK String getDescription() const SWIFT_SYMBOL("s:SS8UTF8ViewV11descriptionSSvp"); + SWIFT_INLINE_THUNK String getDebugDescription() const SWIFT_SYMBOL("s:SS8UTF8ViewV16debugDescriptionSSvp"); + SWIFT_INLINE_THUNK swift::Int getCount() const SWIFT_SYMBOL("s:SS8UTF8ViewV5countSivp"); +private: + SWIFT_INLINE_THUNK UTF8View() noexcept {} + static SWIFT_INLINE_THUNK UTF8View _make() noexcept { return UTF8View(); } + SWIFT_INLINE_THUNK const char * _Nonnull _getOpaquePointer() const noexcept { return _storage; } + SWIFT_INLINE_THUNK char * _Nonnull _getOpaquePointer() noexcept { return _storage; } + + alignas(8) char _storage[16]; + friend class _impl::_impl_UTF8View; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-identifier" + typedef char $sSS8UTF8ViewVD; + static inline constexpr $sSS8UTF8ViewVD __swift_mangled_name = 0; +#pragma clang diagnostic pop +#pragma clang diagnostic pop +}; + +namespace _impl { + +class _impl_UTF8View { +public: + static SWIFT_INLINE_THUNK char * _Nonnull getOpaquePointer(UTF8View &object) { return object._getOpaquePointer(); } + static SWIFT_INLINE_THUNK const char * _Nonnull getOpaquePointer(const UTF8View &object) { return object._getOpaquePointer(); } + template + static SWIFT_INLINE_PRIVATE_HELPER UTF8View returnNewValue(T callable) { + auto result = UTF8View::_make(); + callable(result._getOpaquePointer()); + return result; + } + static SWIFT_INLINE_THUNK void initializeWithTake(char * _Nonnull destStorage, char * _Nonnull srcStorage) { + auto metadata = _impl::$sSS8UTF8ViewVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithTake(destStorage, srcStorage, metadata._0); + } +}; + +} // namespace _impl + +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return swift::_impl::$sSS8UTF8ViewVMa(0)._0; + } +}; +namespace _impl{ +template<> +static inline const constexpr bool isValueType = true; +template<> +struct implClassFor { using type = swift::_impl::_impl_UTF8View; }; +} // namespace +#pragma clang diagnostic pop +} // namespace swift + +namespace swift SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("swift") { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK Array Array::init() { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_void_ptr_0_8(result, _impl::$sS2ayxGycfC(swift::TypeMetadataTrait::getTypeMetadata())); + }); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK Array Array::init(const T_0_0& repeatedValue, swift::Int count) { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_void_ptr_0_8(result, _impl::$sSa9repeating5countSayxGx_SitcfC(swift::_impl::getOpaquePointer(repeatedValue), count, swift::TypeMetadataTrait::getTypeMetadata())); + }); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK void Array::reserveCapacity(swift::Int minimumCapacity) { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa15reserveCapacityyySiF(minimumCapacity, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK void Array::append(const T_0_0& newElement) { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa6appendyyxnF(swift::_impl::getOpaquePointer(newElement), swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK swift::Optional Array::_customRemoveLast() { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::_impl_Optional::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::$sSa17_customRemoveLastxSgyF(result, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + }); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK T_0_0 Array::removeAt(swift::Int index) { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" + if constexpr (std::is_base_of<::swift::_impl::RefCountedClass, T_0_0>::value) { + void *returnValue; + _impl::$sSa6remove2atxSi_tF(reinterpret_cast(&returnValue), index, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + return ::swift::_impl::implClassFor::type::makeRetained(returnValue); + } else if constexpr (::swift::_impl::isValueType) { + return ::swift::_impl::implClassFor::type::returnNewValue([&](void * _Nonnull returnValue) SWIFT_INLINE_THUNK_ATTRIBUTES { +_impl::$sSa6remove2atxSi_tF(returnValue, index, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + }); + } else if constexpr (::swift::_impl::isSwiftBridgedCxxRecord) { +alignas(alignof(T_0_0)) char storage[sizeof(T_0_0)]; +auto * _Nonnull storageObjectPtr = reinterpret_cast(storage); +_impl::$sSa6remove2atxSi_tF(storage, index, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); +T_0_0 result(static_cast(*storageObjectPtr)); +storageObjectPtr->~T_0_0(); +return result; + } else { + T_0_0 returnValue; +_impl::$sSa6remove2atxSi_tF(reinterpret_cast(&returnValue), index, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + return returnValue; + } +#pragma clang diagnostic pop + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK void Array::insertAt(const T_0_0& newElement, swift::Int i) { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa6insert_2atyxn_SitF(swift::_impl::getOpaquePointer(newElement), i, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK void Array::removeAllKeepingCapacity(bool keepCapacity) { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa9removeAll15keepingCapacityySb_tF(keepCapacity, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK swift::Int Array::getStartIndex() const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa10startIndexSivg(_impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK swift::Int Array::getEndIndex() const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa8endIndexSivg(_impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK swift::Int Array::distanceFromTo(swift::Int start, swift::Int end) const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa8distance4from2toS2i_SitF(start, end, _impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + } +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK T_0_0 Array::operator [](swift::Int index) const SWIFT_SYMBOL("s:SayxSicig") { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" + if constexpr (std::is_base_of<::swift::_impl::RefCountedClass, T_0_0>::value) { + void *returnValue; + _impl::$sSayxSicig(reinterpret_cast(&returnValue), index, _impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + return ::swift::_impl::implClassFor::type::makeRetained(returnValue); + } else if constexpr (::swift::_impl::isValueType) { + return ::swift::_impl::implClassFor::type::returnNewValue([&](void * _Nonnull returnValue) SWIFT_INLINE_THUNK_ATTRIBUTES { +_impl::$sSayxSicig(returnValue, index, _impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + }); + } else if constexpr (::swift::_impl::isSwiftBridgedCxxRecord) { +alignas(alignof(T_0_0)) char storage[sizeof(T_0_0)]; +auto * _Nonnull storageObjectPtr = reinterpret_cast(storage); +_impl::$sSayxSicig(storage, index, _impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); +T_0_0 result(static_cast(*storageObjectPtr)); +storageObjectPtr->~T_0_0(); +return result; + } else { + T_0_0 returnValue; +_impl::$sSayxSicig(reinterpret_cast(&returnValue), index, _impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + return returnValue; + } +#pragma clang diagnostic pop + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK swift::Int Array::getCount() const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa5countSivg(_impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK bool Array::_hoistableIsNativeTypeChecked() const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa29_hoistableIsNativeTypeCheckedSbyF(_impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK swift::Int Array::getCapacity() const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::$sSa8capacitySivg(_impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata()); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK String Array::getDescription() const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSa11descriptionSSvg(_impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata())); + }); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK String Array::getDebugDescription() const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSa16debugDescriptionSSvg(_impl::swift_interop_passDirect_swift_void_ptr_0_8(_getOpaquePointer()), swift::TypeMetadataTrait::getTypeMetadata())); + }); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK Array Array::init(const Array& elements) { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_void_ptr_0_8(result, _impl::$sSa12arrayLiteralSayxGxd_tcfC(_impl::swift_interop_passDirect_swift_void_ptr_0_8(_impl::_impl_Array::getOpaquePointer(elements)), swift::TypeMetadataTrait::getTypeMetadata())); + }); + } + SWIFT_INLINE_THUNK swift::Int String_Index::getEncodedOffset() const { + return _impl::$sSS5IndexV13encodedOffsetSivg(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK String_Index String_Index::init(swift::Int offset) { + return _impl::_impl_String_Index::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8(result, _impl::$sSS5IndexV13encodedOffsetABSi_tcfC(offset)); + }); + } + SWIFT_INLINE_THUNK swift::Optional String_Index::init(const String_Index& sourcePosition, const String& target) { + return _impl::_impl_Optional::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_uint8_t_8_9(result, _impl::$sSS5IndexV_6withinABSgAB_SStcfC(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(sourcePosition)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_String::getOpaquePointer(target)))); + }); + } + SWIFT_INLINE_THUNK swift::Optional String_Index::samePositionIn(const UTF8View& utf8) const { + return _impl::_impl_Optional::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_uint8_t_8_9(result, _impl::$sSS5IndexV12samePosition2inABSgSS8UTF8ViewV_tF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_UTF8View::getOpaquePointer(utf8)), _impl::swift_interop_passDirect_swift_uint64_t_0_8(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK swift::Int String_Index::getHashValue() const { + return _impl::$sSS5IndexV9hashValueSivg(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK swift::Optional String_Index::samePositionIn(const String& characters) const { + return _impl::_impl_Optional::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_uint8_t_8_9(result, _impl::$sSS5IndexV12samePosition2inABSgSS_tF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_String::getOpaquePointer(characters)), _impl::swift_interop_passDirect_swift_uint64_t_0_8(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK swift::Optional String_Index::init(const String_Index& idx, const UTF8View& target) { + return _impl::_impl_Optional::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_uint8_t_8_9(result, _impl::$sSS5IndexV_6withinABSgAB_SS8UTF8ViewVtcfC(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(idx)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_UTF8View::getOpaquePointer(target)))); + }); + } +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts + SWIFT_INLINE_THUNK Optional Optional::_impl_some::operator()(const T_0_0& val) const { + auto result = Optional::_make(); +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +if constexpr (std::is_base_of<::swift::_impl::RefCountedClass, T_0_0>::value) { + void *ptr = ::swift::_impl::_impl_RefCountedClass::copyOpaquePointer(val); + memcpy(result._getOpaquePointer(), &ptr, sizeof(ptr)); +} else if constexpr (::swift::_impl::isValueType) { + alignas(T_0_0) unsigned char buffer[sizeof(T_0_0)]; + auto *valCopy = new(buffer) T_0_0(val); + swift::_impl::implClassFor::type::initializeWithTake(result._getOpaquePointer(), swift::_impl::implClassFor::type::getOpaquePointer(*valCopy)); +} else { + memcpy(result._getOpaquePointer(), &val, sizeof(val)); +} +#pragma clang diagnostic pop + result._destructiveInjectEnumTag(0); + return result; + } +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts + SWIFT_INLINE_THUNK bool Optional::isSome() const { + return *this == Optional::some; + } +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts + SWIFT_INLINE_THUNK T_0_0 Optional::getSome() const { + if (!isSome()) abort(); + alignas(Optional) unsigned char buffer[sizeof(Optional)]; + auto *thisCopy = new(buffer) Optional(*this); + char * _Nonnull payloadFromDestruction = thisCopy->_destructiveProjectEnumData(); +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" + if constexpr (std::is_base_of<::swift::_impl::RefCountedClass, T_0_0>::value) { + void *returnValue; + returnValue = *reinterpret_cast(payloadFromDestruction); + return ::swift::_impl::implClassFor::type::makeRetained(returnValue); + } else if constexpr (::swift::_impl::isValueType) { + return ::swift::_impl::implClassFor::type::returnNewValue([&](void * _Nonnull returnValue) SWIFT_INLINE_THUNK_ATTRIBUTES { + return ::swift::_impl::implClassFor::type::initializeWithTake(reinterpret_cast(returnValue), payloadFromDestruction); + }); + } else if constexpr (::swift::_impl::isSwiftBridgedCxxRecord) { +abort(); + } else { + T_0_0 returnValue; +memcpy(&returnValue, payloadFromDestruction, sizeof(returnValue)); + return returnValue; + } +#pragma clang diagnostic pop +} +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts + SWIFT_INLINE_THUNK Optional Optional::_impl_none::operator()() const { + auto result = Optional::_make(); + result._destructiveInjectEnumTag(1); + return result; + } +template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts + SWIFT_INLINE_THUNK bool Optional::isNone() const { + return *this == Optional::none; + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK swift::Optional Optional::init(const T_0_0& some_) { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts + return _impl::_impl_Optional::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::$sSqyxSgxcfC(result, swift::_impl::getOpaquePointer(some_), swift::TypeMetadataTrait::getTypeMetadata()); + }); + } + template +#ifdef __cpp_concepts +requires swift::isUsableInGenericContext +#endif // __cpp_concepts +SWIFT_INLINE_THUNK T_0_0 Optional::getUnsafelyUnwrapped() const { +#ifndef __cpp_concepts +static_assert(swift::isUsableInGenericContext, "type cannot be used in a Swift generic context"); +#endif // __cpp_concepts +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" + if constexpr (std::is_base_of<::swift::_impl::RefCountedClass, T_0_0>::value) { + void *returnValue; + _impl::$sSq17unsafelyUnwrappedxvg(reinterpret_cast(&returnValue), swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + return ::swift::_impl::implClassFor::type::makeRetained(returnValue); + } else if constexpr (::swift::_impl::isValueType) { + return ::swift::_impl::implClassFor::type::returnNewValue([&](void * _Nonnull returnValue) SWIFT_INLINE_THUNK_ATTRIBUTES { +_impl::$sSq17unsafelyUnwrappedxvg(returnValue, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + }); + } else if constexpr (::swift::_impl::isSwiftBridgedCxxRecord) { +alignas(alignof(T_0_0)) char storage[sizeof(T_0_0)]; +auto * _Nonnull storageObjectPtr = reinterpret_cast(storage); +_impl::$sSq17unsafelyUnwrappedxvg(storage, swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); +T_0_0 result(static_cast(*storageObjectPtr)); +storageObjectPtr->~T_0_0(); +return result; + } else { + T_0_0 returnValue; +_impl::$sSq17unsafelyUnwrappedxvg(reinterpret_cast(&returnValue), swift::TypeMetadataTrait>::getTypeMetadata(), _getOpaquePointer()); + return returnValue; + } +#pragma clang diagnostic pop + } + SWIFT_INLINE_THUNK String String::init() { + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sS2SycfC()); + }); + } + SWIFT_INLINE_THUNK String_Index String::getStartIndex() const { + return _impl::_impl_String_Index::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8(result, _impl::$sSS10startIndexSS0B0Vvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String_Index String::getEndIndex() const { + return _impl::_impl_String_Index::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8(result, _impl::$sSS8endIndexSS0B0Vvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK swift::Int String::getCount() const { + return _impl::$sSS5countSivg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK swift::Int String::distanceFromTo(const String_Index& start, const String_Index& end) const { + return _impl::$sSS8distance4from2toSiSS5IndexV_AEtF(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(start)), _impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(end)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK void String::reserveCapacity(swift::Int n) { + return _impl::$sSS15reserveCapacityyySiF(n, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK void String::append(const String& other) { + return _impl::$sSS6appendyySSF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_String::getOpaquePointer(other)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK void String::appendContentsOf(const String& newElements) { + return _impl::$sSS6append10contentsOfySS_tF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_String::getOpaquePointer(newElements)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK void String::removeAllKeepingCapacity(bool keepCapacity) { + return _impl::$sSS9removeAll15keepingCapacityySb_tF(keepCapacity, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK UTF8View String::getUtf8() const { + return _impl::_impl_UTF8View::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSS4utf8SS8UTF8ViewVvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK void String::setUtf8(const UTF8View& newValue) { + return _impl::$sSS4utf8SS8UTF8ViewVvs(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_UTF8View::getOpaquePointer(newValue)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK String String::getCharacters() const { + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSS10charactersSSvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK void String::setCharacters(const String& newValue) { + return _impl::$sSS10charactersSSvs(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_String::getOpaquePointer(newValue)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Int String::getHashValue() const { + return _impl::$sSS9hashValueSivg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK Array String::get_nfcCodeUnits() const { + return _impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_void_ptr_0_8(result, _impl::$sSS13_nfcCodeUnitsSays5UInt8VGvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK bool String::isEmpty() const { + return _impl::$sSS7isEmptySbvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK String String::lowercased() const { + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSS10lowercasedSSyF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String String::uppercased() const { + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSS10uppercasedSSyF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String String::getDebugDescription() const { + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSS16debugDescriptionSSvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String String::getDescription() const { + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSS11descriptionSSvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK void String::write(const String& other) { + return _impl::$sSS5writeyySSF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_String::getOpaquePointer(other)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK void String::_dump() const { + return _impl::$sSS5_dumpyyF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK bool String::hasPrefix(const String& prefix) const { + return _impl::$sSS9hasPrefixySbSSF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_String::getOpaquePointer(prefix)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK bool String::hasSuffix(const String& suffix) const { + return _impl::$sSS9hasSuffixySbSSF(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_impl::_impl_String::getOpaquePointer(suffix)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK String_Index UTF8View::getStartIndex() const { + return _impl::_impl_String_Index::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8(result, _impl::$sSS8UTF8ViewV10startIndexSS0D0Vvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String_Index UTF8View::getEndIndex() const { + return _impl::_impl_String_Index::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8(result, _impl::$sSS8UTF8ViewV8endIndexSS0D0Vvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String_Index UTF8View::indexAfter(const String_Index& i) const { + return _impl::_impl_String_Index::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8(result, _impl::$sSS8UTF8ViewV5index5afterSS5IndexVAF_tF(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(i)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String_Index UTF8View::indexBefore(const String_Index& i) const { + return _impl::_impl_String_Index::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8(result, _impl::$sSS8UTF8ViewV5index6beforeSS5IndexVAF_tF(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(i)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String_Index UTF8View::indexOffsetBy(const String_Index& i, swift::Int n) const { + return _impl::_impl_String_Index::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8(result, _impl::$sSS8UTF8ViewV5index_8offsetBySS5IndexVAF_SitF(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(i)), n, _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK swift::Optional UTF8View::indexOffsetByLimitedBy(const String_Index& i, swift::Int n, const String_Index& limit) const { + return _impl::_impl_Optional::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_uint8_t_8_9(result, _impl::$sSS8UTF8ViewV5index_8offsetBy07limitedE0SS5IndexVSgAG_SiAGtF(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(i)), n, _impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(limit)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK swift::Int UTF8View::distanceFromTo(const String_Index& i, const String_Index& j) const { + return _impl::$sSS8UTF8ViewV8distance4from2toSiSS5IndexV_AGtF(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(i)), _impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(j)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } +SWIFT_INLINE_THUNK uint8_t UTF8View::operator [](const String_Index& i) const SWIFT_SYMBOL("s:SS8UTF8ViewVys5UInt8VSS5IndexVcig") { + return _impl::$sSS8UTF8ViewVys5UInt8VSS5IndexVcig(_impl::swift_interop_passDirect_swift_uint64_t_0_8(_impl::_impl_String_Index::getOpaquePointer(i)), _impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + SWIFT_INLINE_THUNK String UTF8View::getDescription() const { + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSS8UTF8ViewV11descriptionSSvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK String UTF8View::getDebugDescription() const { + return _impl::_impl_String::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_swift_uint64_t_0_8_void_ptr_8_16(result, _impl::$sSS8UTF8ViewV16debugDescriptionSSvg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer()))); + }); + } + SWIFT_INLINE_THUNK swift::Int UTF8View::getCount() const { + return _impl::$sSS8UTF8ViewV5countSivg(_impl::swift_interop_passDirect_swift_uint64_t_0_8_void_ptr_8_16(_getOpaquePointer())); + } + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!=(_:_:)'. + +// Unavailable in C++: Swift operator function '!==(_:_:)'. + +// Unavailable in C++: Swift operator function '%(_:_:)'. + +// Unavailable in C++: Swift operator function '%=(_:_:)'. + +// Unavailable in C++: Swift operator function '<(_:_:)'. + +// Unavailable in C++: Swift operator function '<(_:_:)'. + +// Unavailable in C++: Swift operator function '<(_:_:)'. + +// Unavailable in C++: Swift operator function '<(_:_:)'. + +// Unavailable in C++: Swift operator function '<(_:_:)'. + +// Unavailable in C++: Swift operator function '<(_:_:)'. + +// Unavailable in C++: Swift operator function '<=(_:_:)'. + +// Unavailable in C++: Swift operator function '<=(_:_:)'. + +// Unavailable in C++: Swift operator function '<=(_:_:)'. + +// Unavailable in C++: Swift operator function '<=(_:_:)'. + +// Unavailable in C++: Swift operator function '<=(_:_:)'. + +// Unavailable in C++: Swift operator function '<=(_:_:)'. + +// Unavailable in C++: Swift operator function '==(_:_:)'. + +// Unavailable in C++: Swift operator function '==(_:_:)'. + +// Unavailable in C++: Swift operator function '==(_:_:)'. + +// Unavailable in C++: Swift operator function '==(_:_:)'. + +// Unavailable in C++: Swift operator function '==(_:_:)'. + +// Unavailable in C++: Swift operator function '==(_:_:)'. + +// Unavailable in C++: Swift operator function '==(_:_:)'. + +// Unavailable in C++: Swift operator function '==(_:_:)'. + +// Unavailable in C++: Swift operator function '===(_:_:)'. + +// Unavailable in C++: Swift operator function '>(_:_:)'. + +// Unavailable in C++: Swift operator function '>(_:_:)'. + +// Unavailable in C++: Swift operator function '>(_:_:)'. + +// Unavailable in C++: Swift operator function '>(_:_:)'. + +// Unavailable in C++: Swift operator function '>(_:_:)'. + +// Unavailable in C++: Swift operator function '>(_:_:)'. + +// Unavailable in C++: Swift operator function '>=(_:_:)'. + +// Unavailable in C++: Swift operator function '>=(_:_:)'. + +// Unavailable in C++: Swift operator function '>=(_:_:)'. + +// Unavailable in C++: Swift operator function '>=(_:_:)'. + +// Unavailable in C++: Swift operator function '>=(_:_:)'. + +// Unavailable in C++: Swift operator function '>=(_:_:)'. + +// Unavailable in C++: Swift operator function '??(_:_:)'. + +// Unavailable in C++: Swift operator function '??(_:_:)'. + +class AdditiveArithmetic { } SWIFT_UNAVAILABLE_MSG("protocol 'AdditiveArithmetic' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'AnyClass'. + +class AnyKeyPath { } SWIFT_UNAVAILABLE_MSG("class 'AnyKeyPath' is not yet exposed to C++"); + +// Unavailable in C++: Swift type alias 'AnyObject'. + +// Unavailable in C++: Swift type alias 'ArrayLiteralConvertible'. + +class BidirectionalCollection { } SWIFT_UNAVAILABLE_MSG("protocol 'BidirectionalCollection' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'BidirectionalIndexable'. + +// Unavailable in C++: Swift type alias 'BidirectionalSlice'. + +class BinaryFloatingPoint { } SWIFT_UNAVAILABLE_MSG("protocol 'BinaryFloatingPoint' can not yet be represented in C++"); + +class BinaryInteger { } SWIFT_UNAVAILABLE_MSG("protocol 'BinaryInteger' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'BooleanLiteralConvertible'. + +// Unavailable in C++: Swift type alias 'BooleanLiteralType'. + +// Unavailable in C++: Swift type alias 'CBool'. + +// Unavailable in C++: Swift type alias 'CChar'. + +// Unavailable in C++: Swift type alias 'CChar16'. + +// Unavailable in C++: Swift type alias 'CChar32'. + +// Unavailable in C++: Swift type alias 'CDouble'. + +// Unavailable in C++: Swift type alias 'CFloat'. + +// Unavailable in C++: Swift type alias 'CFloat16'. + +// Unavailable in C++: Swift type alias 'CInt'. + +// Unavailable in C++: Swift type alias 'CLong'. + +// Unavailable in C++: Swift type alias 'CLongDouble'. + +// Unavailable in C++: Swift type alias 'CLongLong'. + +// Unavailable in C++: Swift type alias 'CShort'. + +// Unavailable in C++: Swift type alias 'CSignedChar'. + +// Unavailable in C++: Swift type alias 'CUnsignedChar'. + +// Unavailable in C++: Swift type alias 'CUnsignedInt'. + +// Unavailable in C++: Swift type alias 'CUnsignedLong'. + +// Unavailable in C++: Swift type alias 'CUnsignedLongLong'. + +// Unavailable in C++: Swift type alias 'CUnsignedShort'. + +class CVarArg { } SWIFT_UNAVAILABLE_MSG("protocol 'CVarArg' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'CWideChar'. + +class CaseIterable { } SWIFT_UNAVAILABLE_MSG("protocol 'CaseIterable' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'ClosedRangeIndex'. + +// Unavailable in C++: Swift type alias 'Codable'. + +class CodingKey { } SWIFT_UNAVAILABLE_MSG("protocol 'CodingKey' can not yet be represented in C++"); + +class CodingKeyRepresentable { } SWIFT_UNAVAILABLE_MSG("protocol 'CodingKeyRepresentable' can not yet be represented in C++"); + +class Collection { } SWIFT_UNAVAILABLE_MSG("protocol 'Collection' can not yet be represented in C++"); + +class CommandLine { } SWIFT_UNAVAILABLE_MSG("enum 'CommandLine' is not yet exposed to C++"); + +class Comparable { } SWIFT_UNAVAILABLE_MSG("protocol 'Comparable' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'ConcurrentValue'. + +// Unavailable in C++: Swift type alias 'CountableClosedRange'. + +// Unavailable in C++: Swift type alias 'CountablePartialRangeFrom'. + +// Unavailable in C++: Swift type alias 'CountableRange'. + +class CustomDebugStringConvertible { } SWIFT_UNAVAILABLE_MSG("protocol 'CustomDebugStringConvertible' can not yet be represented in C++"); + +class CustomLeafReflectable { } SWIFT_UNAVAILABLE_MSG("protocol 'CustomLeafReflectable' can not yet be represented in C++"); + +class CustomPlaygroundDisplayConvertible { } SWIFT_UNAVAILABLE_MSG("protocol 'CustomPlaygroundDisplayConvertible' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'CustomPlaygroundQuickLookable'. + +class CustomReflectable { } SWIFT_UNAVAILABLE_MSG("protocol 'CustomReflectable' can not yet be represented in C++"); + +class CustomStringConvertible { } SWIFT_UNAVAILABLE_MSG("protocol 'CustomStringConvertible' can not yet be represented in C++"); + +class Decodable { } SWIFT_UNAVAILABLE_MSG("protocol 'Decodable' can not yet be represented in C++"); + +class Decoder { } SWIFT_UNAVAILABLE_MSG("protocol 'Decoder' can not yet be represented in C++"); + +class DecodingError { } SWIFT_UNAVAILABLE_MSG("enum 'DecodingError' is not yet exposed to C++"); + +// Unavailable in C++: Swift type alias 'DefaultBidirectionalIndices'. + +// Unavailable in C++: Swift type alias 'DefaultRandomAccessIndices'. + +// Unavailable in C++: Swift type alias 'DictionaryIndex'. + +// Unavailable in C++: Swift type alias 'DictionaryIterator'. + +// Unavailable in C++: Swift type alias 'DictionaryLiteral'. + +// Unavailable in C++: Swift type alias 'DictionaryLiteralConvertible'. + +class DurationProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'DurationProtocol' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'EmptyIterator'. + +class Encodable { } SWIFT_UNAVAILABLE_MSG("protocol 'Encodable' can not yet be represented in C++"); + +class Encoder { } SWIFT_UNAVAILABLE_MSG("protocol 'Encoder' can not yet be represented in C++"); + +class EncodingError { } SWIFT_UNAVAILABLE_MSG("enum 'EncodingError' is not yet exposed to C++"); + +// Unavailable in C++: Swift type alias 'EnumeratedIterator'. + +class Equatable { } SWIFT_UNAVAILABLE_MSG("protocol 'Equatable' can not yet be represented in C++"); + +class ExpressibleByArrayLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByArrayLiteral' can not yet be represented in C++"); + +class ExpressibleByBooleanLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByBooleanLiteral' can not yet be represented in C++"); + +class ExpressibleByDictionaryLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByDictionaryLiteral' can not yet be represented in C++"); + +class ExpressibleByExtendedGraphemeClusterLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByExtendedGraphemeClusterLiteral' can not yet be represented in C++"); + +class ExpressibleByFloatLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByFloatLiteral' can not yet be represented in C++"); + +class ExpressibleByIntegerLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByIntegerLiteral' can not yet be represented in C++"); + +class ExpressibleByNilLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByNilLiteral' can not yet be represented in C++"); + +class ExpressibleByStringInterpolation { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByStringInterpolation' can not yet be represented in C++"); + +class ExpressibleByStringLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByStringLiteral' can not yet be represented in C++"); + +class ExpressibleByUnicodeScalarLiteral { } SWIFT_UNAVAILABLE_MSG("protocol 'ExpressibleByUnicodeScalarLiteral' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'ExtendedGraphemeClusterLiteralConvertible'. + +// Unavailable in C++: Swift type alias 'ExtendedGraphemeClusterType'. + +class FixedWidthInteger { } SWIFT_UNAVAILABLE_MSG("protocol 'FixedWidthInteger' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'FlattenBidirectionalCollection'. + +// Unavailable in C++: Swift type alias 'FlattenBidirectionalCollectionIndex'. + +// Unavailable in C++: Swift type alias 'FlattenCollection'. + +// Unavailable in C++: Swift type alias 'FlattenCollectionIndex'. + +// Unavailable in C++: Swift type alias 'Float32'. + +// Unavailable in C++: Swift type alias 'Float64'. + +// Unavailable in C++: Swift type alias 'FloatLiteralConvertible'. + +// Unavailable in C++: Swift type alias 'FloatLiteralType'. + +class FloatingPoint { } SWIFT_UNAVAILABLE_MSG("protocol 'FloatingPoint' can not yet be represented in C++"); + +class FloatingPointClassification { } SWIFT_UNAVAILABLE_MSG("enum 'FloatingPointClassification' is not yet exposed to C++"); + +class FloatingPointRoundingRule { } SWIFT_UNAVAILABLE_MSG("enum 'FloatingPointRoundingRule' is not yet exposed to C++"); + +class FloatingPointSign { } SWIFT_UNAVAILABLE_MSG("enum 'FloatingPointSign' is not yet exposed to C++"); + +class Hashable { } SWIFT_UNAVAILABLE_MSG("protocol 'Hashable' can not yet be represented in C++"); + +class Identifiable { } SWIFT_UNAVAILABLE_MSG("protocol 'Identifiable' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'ImplicitlyUnwrappedOptional'. + +// Unavailable in C++: Swift type alias 'Indexable'. + +// Unavailable in C++: Swift type alias 'IndexableBase'. + +class InstantProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'InstantProtocol' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'IntegerLiteralConvertible'. + +// Unavailable in C++: Swift type alias 'IntegerLiteralType'. + +// Unavailable in C++: Swift type alias 'IteratorOverOne'. + +class IteratorProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'IteratorProtocol' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'JoinedIterator'. + +class KeyPath { } SWIFT_UNAVAILABLE_MSG("generic generic class 'KeyPath' can not yet be exposed to C++"); + +class KeyedDecodingContainerProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'KeyedDecodingContainerProtocol' can not yet be represented in C++"); + +class KeyedEncodingContainerProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'KeyedEncodingContainerProtocol' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'LazyBidirectionalCollection'. + +// Unavailable in C++: Swift type alias 'LazyCollection'. + +class LazyCollectionProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'LazyCollectionProtocol' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'LazyDropWhileBidirectionalCollection'. + +// Unavailable in C++: Swift type alias 'LazyDropWhileCollection'. + +// Unavailable in C++: Swift type alias 'LazyDropWhileIndex'. + +// Unavailable in C++: Swift type alias 'LazyDropWhileIterator'. + +// Unavailable in C++: Swift type alias 'LazyFilterBidirectionalCollection'. + +// Unavailable in C++: Swift type alias 'LazyFilterCollection'. + +// Unavailable in C++: Swift type alias 'LazyFilterIndex'. + +// Unavailable in C++: Swift type alias 'LazyFilterIterator'. + +// Unavailable in C++: Swift type alias 'LazyMapBidirectionalCollection'. + +// Unavailable in C++: Swift type alias 'LazyMapCollection'. + +// Unavailable in C++: Swift type alias 'LazyMapIterator'. + +// Unavailable in C++: Swift type alias 'LazyMapRandomAccessCollection'. + +// Unavailable in C++: Swift type alias 'LazyPrefixWhileBidirectionalCollection'. + +// Unavailable in C++: Swift type alias 'LazyPrefixWhileCollection'. + +// Unavailable in C++: Swift type alias 'LazyPrefixWhileIndex'. + +// Unavailable in C++: Swift type alias 'LazyPrefixWhileIterator'. + +// Unavailable in C++: Swift type alias 'LazyRandomAccessCollection'. + +class LazySequenceProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'LazySequenceProtocol' can not yet be represented in C++"); + +class LosslessStringConvertible { } SWIFT_UNAVAILABLE_MSG("protocol 'LosslessStringConvertible' can not yet be represented in C++"); + +class ManagedBuffer { } SWIFT_UNAVAILABLE_MSG("generic generic class 'ManagedBuffer' can not yet be exposed to C++"); + +class MemoryLayout { } SWIFT_UNAVAILABLE_MSG("generic enum 'MemoryLayout' is not yet exposed to C++"); + +class MirrorPath { } SWIFT_UNAVAILABLE_MSG("protocol 'MirrorPath' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'MutableBidirectionalSlice'. + +class MutableCollection { } SWIFT_UNAVAILABLE_MSG("protocol 'MutableCollection' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'MutableIndexable'. + +// Unavailable in C++: Swift type alias 'MutableRandomAccessSlice'. + +// Unavailable in C++: Swift type alias 'MutableRangeReplaceableBidirectionalSlice'. + +// Unavailable in C++: Swift type alias 'MutableRangeReplaceableRandomAccessSlice'. + +// Unavailable in C++: Swift type alias 'MutableRangeReplaceableSlice'. + +// Unavailable in C++: Swift type alias 'MutableSlice'. + +class Never { } SWIFT_UNAVAILABLE_MSG("enum 'Never' is not yet exposed to C++"); + +// Unavailable in C++: Swift type alias 'NilLiteralConvertible'. + +class Numeric { } SWIFT_UNAVAILABLE_MSG("protocol 'Numeric' can not yet be represented in C++"); + +class OptionSet { } SWIFT_UNAVAILABLE_MSG("protocol 'OptionSet' can not yet be represented in C++"); + +class PartialKeyPath { } SWIFT_UNAVAILABLE_MSG("generic generic class 'PartialKeyPath' can not yet be exposed to C++"); + +// Unavailable in C++: Swift type alias 'PlaygroundQuickLook'. + +class RandomAccessCollection { } SWIFT_UNAVAILABLE_MSG("protocol 'RandomAccessCollection' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'RandomAccessIndexable'. + +// Unavailable in C++: Swift type alias 'RandomAccessSlice'. + +class RandomNumberGenerator { } SWIFT_UNAVAILABLE_MSG("protocol 'RandomNumberGenerator' can not yet be represented in C++"); + +class RangeExpression { } SWIFT_UNAVAILABLE_MSG("protocol 'RangeExpression' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'RangeReplaceableBidirectionalSlice'. + +class RangeReplaceableCollection { } SWIFT_UNAVAILABLE_MSG("protocol 'RangeReplaceableCollection' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'RangeReplaceableIndexable'. + +// Unavailable in C++: Swift type alias 'RangeReplaceableRandomAccessSlice'. + +// Unavailable in C++: Swift type alias 'RangeReplaceableSlice'. + +class RawRepresentable { } SWIFT_UNAVAILABLE_MSG("protocol 'RawRepresentable' can not yet be represented in C++"); + +class ReferenceWritableKeyPath { } SWIFT_UNAVAILABLE_MSG("generic generic class 'ReferenceWritableKeyPath' can not yet be exposed to C++"); + +class Result { } SWIFT_UNAVAILABLE_MSG("generic requirements for generic enum 'Result' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'ReversedIndex'. + +// Unavailable in C++: Swift type alias 'ReversedRandomAccessCollection'. + +class SIMD { } SWIFT_UNAVAILABLE_MSG("protocol 'SIMD' can not yet be represented in C++"); + +class SIMDScalar { } SWIFT_UNAVAILABLE_MSG("protocol 'SIMDScalar' can not yet be represented in C++"); + +class SIMDStorage { } SWIFT_UNAVAILABLE_MSG("protocol 'SIMDStorage' can not yet be represented in C++"); + +class Sendable { } SWIFT_UNAVAILABLE_MSG("protocol 'Sendable' can not yet be represented in C++"); + +class Sequence { } SWIFT_UNAVAILABLE_MSG("protocol 'Sequence' can not yet be represented in C++"); + +class SetAlgebra { } SWIFT_UNAVAILABLE_MSG("protocol 'SetAlgebra' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'SetIndex'. + +// Unavailable in C++: Swift type alias 'SetIterator'. + +class SignedInteger { } SWIFT_UNAVAILABLE_MSG("protocol 'SignedInteger' can not yet be represented in C++"); + +class SignedNumeric { } SWIFT_UNAVAILABLE_MSG("protocol 'SignedNumeric' can not yet be represented in C++"); + +class SingleValueDecodingContainer { } SWIFT_UNAVAILABLE_MSG("protocol 'SingleValueDecodingContainer' can not yet be represented in C++"); + +class SingleValueEncodingContainer { } SWIFT_UNAVAILABLE_MSG("protocol 'SingleValueEncodingContainer' can not yet be represented in C++"); + +class Strideable { } SWIFT_UNAVAILABLE_MSG("protocol 'Strideable' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'StringInterpolationConvertible'. + +class StringInterpolationProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'StringInterpolationProtocol' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'StringLiteralConvertible'. + +// Unavailable in C++: Swift type alias 'StringLiteralType'. + +class StringProtocol { } SWIFT_UNAVAILABLE_MSG("protocol 'StringProtocol' can not yet be represented in C++"); + +class TextOutputStream { } SWIFT_UNAVAILABLE_MSG("protocol 'TextOutputStream' can not yet be represented in C++"); + +class TextOutputStreamable { } SWIFT_UNAVAILABLE_MSG("protocol 'TextOutputStreamable' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'UTF16'. + +// Unavailable in C++: Swift type alias 'UTF32'. + +// Unavailable in C++: Swift type alias 'UTF8'. + +// Unavailable in C++: Swift type alias 'UnboundedRange'. + +class UnboundedRange_ { } SWIFT_UNAVAILABLE_MSG("enum 'UnboundedRange_' is not yet exposed to C++"); + +// Unavailable in C++: Swift type alias 'UnfoldFirstSequence'. + +class Unicode { } SWIFT_UNAVAILABLE_MSG("enum 'Unicode' is not yet exposed to C++"); + +class UnicodeCodec { } SWIFT_UNAVAILABLE_MSG("protocol 'UnicodeCodec' can not yet be represented in C++"); + +class UnicodeDecodingResult { } SWIFT_UNAVAILABLE_MSG("enum 'UnicodeDecodingResult' is not yet exposed to C++"); + +// Unavailable in C++: Swift type alias 'UnicodeScalar'. + +// Unavailable in C++: Swift type alias 'UnicodeScalarLiteralConvertible'. + +// Unavailable in C++: Swift type alias 'UnicodeScalarType'. + +class UnkeyedDecodingContainer { } SWIFT_UNAVAILABLE_MSG("protocol 'UnkeyedDecodingContainer' can not yet be represented in C++"); + +class UnkeyedEncodingContainer { } SWIFT_UNAVAILABLE_MSG("protocol 'UnkeyedEncodingContainer' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'UnsafeBufferPointerIterator'. + +// Unavailable in C++: Swift type alias 'UnsafeConcurrentValue'. + +// Unavailable in C++: Swift type alias 'UnsafeMutableRawBufferPointerIterator'. + +// Unavailable in C++: Swift type alias 'UnsafeRawBufferPointerIterator'. + +class UnsafeSendable { } SWIFT_UNAVAILABLE_MSG("protocol 'UnsafeSendable' can not yet be represented in C++"); + +class UnsignedInteger { } SWIFT_UNAVAILABLE_MSG("protocol 'UnsignedInteger' can not yet be represented in C++"); + +// Unavailable in C++: Swift type alias 'Void'. + +class WritableKeyPath { } SWIFT_UNAVAILABLE_MSG("generic generic class 'WritableKeyPath' can not yet be exposed to C++"); + +// Unavailable in C++: Swift type alias 'Zip2Iterator'. + +// Unavailable in C++: Swift global function 'abs(_:)'. + +// Unavailable in C++: Swift global function 'all(_:)'. + +// Unavailable in C++: Swift global function 'any(_:)'. + +// Unavailable in C++: Swift global function 'assert(_:_:file:line:)'. + +// Unavailable in C++: Swift global function 'assertionFailure(_:file:line:)'. + +// Unavailable in C++: Swift macro 'column()'. + +// Unavailable in C++: Swift global function 'debugPrint(_:separator:terminator:)'. + +// Unavailable in C++: Swift global function 'debugPrint(_:separator:terminator:to:)'. + +// Unavailable in C++: Swift macro 'dsohandle()'. + +// Unavailable in C++: Swift global function 'dump(_:name:indent:maxDepth:maxItems:)'. + +// Unavailable in C++: Swift global function 'dump(_:to:name:indent:maxDepth:maxItems:)'. + +// Unavailable in C++: Swift macro 'error(_:)'. + +// Unavailable in C++: Swift macro 'externalMacro(module:type:)'. + +// Unavailable in C++: Swift global function 'fatalError(_:file:line:)'. + +// Unavailable in C++: Swift macro 'file()'. + +// Unavailable in C++: Swift macro 'fileID()'. + +// Unavailable in C++: Swift macro 'filePath()'. + +// Unavailable in C++: Swift macro 'function()'. + +// Unavailable in C++: Swift global function 'getVaList(_:)'. + +// Unavailable in C++: Swift global function 'isKnownUniquelyReferenced(_:)'. + +// Unavailable in C++: Swift global function 'isKnownUniquelyReferenced(_:)'. + +// Unavailable in C++: Swift macro 'line()'. + +// Unavailable in C++: Swift global function 'max(_:_:)'. + +// Unavailable in C++: Swift global function 'max(_:_:_:_:)'. + +// Unavailable in C++: Swift global function 'min(_:_:)'. + +// Unavailable in C++: Swift global function 'min(_:_:_:_:)'. + +// Unavailable in C++: Swift global function 'numericCast(_:)'. + +// Unavailable in C++: Swift global function 'pointwiseMax(_:_:)'. + +// Unavailable in C++: Swift global function 'pointwiseMax(_:_:)'. + +// Unavailable in C++: Swift global function 'pointwiseMin(_:_:)'. + +// Unavailable in C++: Swift global function 'pointwiseMin(_:_:)'. + +// Unavailable in C++: Swift global function 'precondition(_:_:file:line:)'. + +// Unavailable in C++: Swift global function 'preconditionFailure(_:file:line:)'. + +// Unavailable in C++: Swift global function 'print(_:separator:terminator:)'. + +// Unavailable in C++: Swift global function 'print(_:separator:terminator:to:)'. + +// Unavailable in C++: Swift global function 'readLine(strippingNewline:)'. + +// Unavailable in C++: Swift global function 'repeatElement(_:count:)'. + +// Unavailable in C++: Swift global function 'sequence(first:next:)'. + +// Unavailable in C++: Swift global function 'sequence(state:next:)'. + +// Unavailable in C++: Swift global function 'stride(from:through:by:)'. + +// Unavailable in C++: Swift global function 'stride(from:to:by:)'. + +// Unavailable in C++: Swift global function 'swap(_:_:)'. + +// Unavailable in C++: Swift global function 'transcode(_:_:_:_:stopOnError:)'. + +// Unavailable in C++: Swift global function 'transcode(_:from:to:stoppingOnError:into:)'. + +// Unavailable in C++: Swift global function 'type(of:)'. + +// Unavailable in C++: Swift global function 'unsafeBitCast(_:to:)'. + +// Unavailable in C++: Swift global function 'unsafeDowncast(_:to:)'. + +// Unavailable in C++: Swift macro 'warning(_:)'. + +// Unavailable in C++: Swift global function 'withExtendedLifetime(_:_:)'. + +// Unavailable in C++: Swift global function 'withExtendedLifetime(_:_:)'. + +// Unavailable in C++: Swift global function 'withUnsafeBytes(of:_:)'. + +// Unavailable in C++: Swift global function 'withUnsafeBytes(of:_:)'. + +// Unavailable in C++: Swift global function 'withUnsafeMutableBytes(of:_:)'. + +// Unavailable in C++: Swift global function 'withUnsafeMutablePointer(to:_:)'. + +// Unavailable in C++: Swift global function 'withUnsafePointer(to:_:)'. + +// Unavailable in C++: Swift global function 'withUnsafePointer(to:_:)'. + +// Unavailable in C++: Swift global function 'withUnsafeTemporaryAllocation(byteCount:alignment:_:)'. + +// Unavailable in C++: Swift global function 'withUnsafeTemporaryAllocation(of:capacity:_:)'. + +// Unavailable in C++: Swift global function 'withVaList(_:_:)'. + +// Unavailable in C++: Swift global function 'withoutActuallyEscaping(_:do:)'. + +// Unavailable in C++: Swift global function 'zip(_:_:)'. + +// Unavailable in C++: Swift operator function '~=(_:_:)'. +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wnon-modular-include-in-framework-module" +// Look for the C++ interop support header relative to clang's resource dir: +// '/usr/lib/clang//include/../../../swift/swiftToCxx'. +#if __has_include(<../../../swift/swiftToCxx/_SwiftStdlibCxxOverlay.h>) +#include <../../../swift/swiftToCxx/_SwiftStdlibCxxOverlay.h> +#elif __has_include(<../../../../../lib/swift/swiftToCxx/_SwiftStdlibCxxOverlay.h>) +// '/usr/local/lib/clang//include/../../../../../lib/swift/swiftToCxx'. +#include <../../../../../lib/swift/swiftToCxx/_SwiftStdlibCxxOverlay.h> +// Alternatively, allow user to find the header using additional include path into '/lib/swift'. +#elif __has_include() +#include +#endif +#pragma clang diagnostic pop + +} // namespace swift + +#pragma clang diagnostic pop +#undef SWIFT_SYMBOL +#endif // SWIFT_SWIFT_H +#ifdef SWIFT_SYMBOL +#undef SWIFT_SYMBOL +#endif +#define SWIFT_SYMBOL(usrValue) SWIFT_SYMBOL_MODULE_USR("SCompressLib", usrValue) +#ifndef SWIFT_PRINTED_CORE +#define SWIFT_PRINTED_CORE +namespace swift SWIFT_PRIVATE_ATTR { + +namespace _impl { + +#ifdef __cplusplus +extern "C" { +#endif + +// Swift type metadata response type. +struct MetadataResponseTy { + void * _Null_unspecified _0; + uint64_t _1; +}; +// Swift type metadata request type. +typedef uint64_t MetadataRequestTy; + +#if __cplusplus > 201402L +# define SWIFT_NOEXCEPT_FUNCTION_PTR noexcept +#else +# define SWIFT_NOEXCEPT_FUNCTION_PTR +#endif + +using ValueWitnessInitializeBufferWithCopyOfBufferTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(55882))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessDestroyTy = void(* __ptrauth_swift_value_witness_function_pointer(1272))(void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessInitializeWithCopyTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(58298))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessAssignWithCopyTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(34641))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessInitializeWithTakeTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(18648))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessAssignWithTakeTy = void * _Nonnull(* __ptrauth_swift_value_witness_function_pointer(61402))(void * _Nonnull, void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessGetEnumTagSinglePayloadTy = unsigned(* __ptrauth_swift_value_witness_function_pointer(24816))(const void * _Nonnull, unsigned, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using ValueWitnessStoreEnumTagSinglePayloadTy = void(* __ptrauth_swift_value_witness_function_pointer(41169))(void * _Nonnull, unsigned, unsigned, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; + +struct ValueWitnessTable { + ValueWitnessInitializeBufferWithCopyOfBufferTy _Nonnull initializeBufferWithCopyOfBuffer; + ValueWitnessDestroyTy _Nonnull destroy; + ValueWitnessInitializeWithCopyTy _Nonnull initializeWithCopy; + ValueWitnessAssignWithCopyTy _Nonnull assignWithCopy; + ValueWitnessInitializeWithTakeTy _Nonnull initializeWithTake; + ValueWitnessAssignWithTakeTy _Nonnull assignWithTake; + ValueWitnessGetEnumTagSinglePayloadTy _Nonnull getEnumTagSinglePayload; + ValueWitnessStoreEnumTagSinglePayloadTy _Nonnull storeEnumTagSinglePayload; + size_t size; + size_t stride; + unsigned flags; + unsigned extraInhabitantCount; + + constexpr size_t getAlignment() const { return (flags & 255) + 1; } +}; + +using EnumValueWitnessGetEnumTagTy = unsigned(* __ptrauth_swift_value_witness_function_pointer(41909))(const void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using EnumValueWitnessDestructiveProjectEnumDataTy = void(* __ptrauth_swift_value_witness_function_pointer(1053))(void * _Nonnull, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; +using EnumValueWitnessDestructiveInjectEnumTagTy = void(* __ptrauth_swift_value_witness_function_pointer(45796))(void * _Nonnull, unsigned, void * _Nonnull) SWIFT_NOEXCEPT_FUNCTION_PTR; + +struct EnumValueWitnessTable { + ValueWitnessTable vwTable; + EnumValueWitnessGetEnumTagTy _Nonnull getEnumTag; + EnumValueWitnessDestructiveProjectEnumDataTy _Nonnull destructiveProjectEnumData; + EnumValueWitnessDestructiveInjectEnumTagTy _Nonnull destructiveInjectEnumTag; +}; + +#undef SWIFT_NOEXCEPT_FUNCTION_PTR + + +// type metadata address for Bool. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSbN; +// type metadata address for Int8. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss4Int8VN; +// type metadata address for UInt8. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss5UInt8VN; +// type metadata address for Int16. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss5Int16VN; +// type metadata address for UInt16. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss6UInt16VN; +// type metadata address for Int32. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss5Int32VN; +// type metadata address for UInt32. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss6UInt32VN; +// type metadata address for Int64. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss5Int64VN; +// type metadata address for UInt64. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss6UInt64VN; +// type metadata address for Float. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSfN; +// type metadata address for Double. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSdN; +// type metadata address for OpaquePointer. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $ss13OpaquePointerVN; +// type metadata address for Int. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSiN; +// type metadata address for UInt. +SWIFT_IMPORT_STDLIB_SYMBOL extern size_t $sSuN; + +#ifdef __cplusplus +} +#endif + + +} // namespace _impl + + +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSbN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss4Int8VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss5UInt8VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss5Int16VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss6UInt16VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss5Int32VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss6UInt32VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss5Int64VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss6UInt64VN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSfN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSdN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$ss13OpaquePointerVN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSiN; + } +}; + +template<> +static inline const constexpr bool isUsableInGenericContext = true; + +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return &_impl::$sSuN; + } +}; + +#pragma clang diagnostic pop + +} // namespace swift + +#endif +#endif +#ifdef __cplusplus +namespace SCompressLib SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("SCompressLib") { +namespace _impl { +extern "C" { +#endif + +SWIFT_EXTERN void $s12SCompressLib0A5ParamVACycfC(SWIFT_INDIRECT_RESULT void * _Nonnull) SWIFT_NOEXCEPT SWIFT_CALL; // init() +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV2ids5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV2ids5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV5widths5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV5widths5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV6heights5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV6heights5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV6strides5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV6strides5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV11pixelFormats5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV11pixelFormats5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV9tileWidths5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV9tileWidths5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV9modeAlphas5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV9modeAlphas5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV7modeRgbs5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV7modeRgbs5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib0A5ParamV7cmpModes5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV7cmpModes5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 { + void * _Nullable _1; +}; + +static SWIFT_C_INLINE_THUNK void swift_interop_returnDirect_SCompressLib_void_ptr_0_8(char * _Nonnull result, struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 value) { + memcpy(result + 0, &value._1, 8); +} + +SWIFT_EXTERN struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 $s12SCompressLib0A5ParamV10redChannelSays5UInt8VGvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +// Stub struct to be used to pass/return values to/from Swift functions. +struct swift_interop_passStub_SCompressLib_void_ptr_0_8 { + void * _Nullable _1; +}; + +static SWIFT_C_INLINE_THUNK struct swift_interop_passStub_SCompressLib_void_ptr_0_8 swift_interop_passDirect_SCompressLib_void_ptr_0_8(const char * _Nonnull value) { + struct swift_interop_passStub_SCompressLib_void_ptr_0_8 result; + memcpy(&result._1, value + 0, 8); + return result; +} + +SWIFT_EXTERN void $s12SCompressLib0A5ParamV10redChannelSays5UInt8VGvs(struct swift_interop_passStub_SCompressLib_void_ptr_0_8 value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 $s12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvs(struct swift_interop_passStub_SCompressLib_void_ptr_0_8 value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 $s12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvs(struct swift_interop_passStub_SCompressLib_void_ptr_0_8 value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 $s12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvs(struct swift_interop_passStub_SCompressLib_void_ptr_0_8 value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib0A4Rets2id5state9tileWidth7retDataySi_S2iSays5UInt8VGtF(ptrdiff_t id, ptrdiff_t state, ptrdiff_t tileWidth, struct swift_interop_passStub_SCompressLib_void_ptr_0_8 retData) SWIFT_NOEXCEPT SWIFT_CALL; // SCompressRets(id:state:tileWidth:retData:) +SWIFT_EXTERN void $s12SCompressLib14SDecompressRet2id5state5width6height6format3red5green4blue5alphaySi_SiS3uSays5UInt8VGA3NtF(ptrdiff_t id, ptrdiff_t state, size_t width, size_t height, size_t format, struct swift_interop_passStub_SCompressLib_void_ptr_0_8 red, struct swift_interop_passStub_SCompressLib_void_ptr_0_8 green, struct swift_interop_passStub_SCompressLib_void_ptr_0_8 blue, struct swift_interop_passStub_SCompressLib_void_ptr_0_8 alpha) SWIFT_NOEXCEPT SWIFT_CALL; // SDecompressRet(id:state:width:height:format:red:green:blue:alpha:) +SWIFT_EXTERN void $s12SCompressLib15SDecompressRetsVACycfC(SWIFT_INDIRECT_RESULT void * _Nonnull) SWIFT_NOEXCEPT SWIFT_CALL; // init() +SWIFT_EXTERN int32_t $s12SCompressLib15SDecompressRetsV5widths5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib15SDecompressRetsV5widths5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib15SDecompressRetsV6heights5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib15SDecompressRetsV6heights5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN int32_t $s12SCompressLib15SDecompressRetsV6formats5Int32Vvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib15SDecompressRetsV6formats5Int32Vvs(int32_t value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 $s12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvs(struct swift_interop_passStub_SCompressLib_void_ptr_0_8 value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 $s12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvs(struct swift_interop_passStub_SCompressLib_void_ptr_0_8 value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 $s12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvs(struct swift_interop_passStub_SCompressLib_void_ptr_0_8 value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN struct swift_interop_returnStub_SCompressLib_void_ptr_0_8 $s12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvg(SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvs(struct swift_interop_passStub_SCompressLib_void_ptr_0_8 value, SWIFT_CONTEXT void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // _ +SWIFT_EXTERN void $s12SCompressLib10SPicZipApiVACycfC(SWIFT_INDIRECT_RESULT void * _Nonnull) SWIFT_NOEXCEPT SWIFT_CALL; // init() +SWIFT_EXTERN void $s12SCompressLib10SPicZipApiV8Compress13compressParamyAA0aH0V_tF(const void * _Nonnull compressParam, SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // Compress(compressParam:) +SWIFT_EXTERN void $s12SCompressLib10SPicZipApiV10Decompress2id10fileBufferys6UInt32V_Says5UInt8VGtF(uint32_t id, struct swift_interop_passStub_SCompressLib_void_ptr_0_8 fileBuffer, SWIFT_CONTEXT const void * _Nonnull _self) SWIFT_NOEXCEPT SWIFT_CALL; // Decompress(id:fileBuffer:) + +#ifdef __cplusplus +} +} +} +namespace SCompressLib SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("SCompressLib") { + +class SWIFT_SYMBOL("s:12SCompressLib0A5ParamV") SCompressParam; +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +static inline const constexpr bool isUsableInGenericContext = true; +#pragma clang diagnostic pop +} // namespace swift + +namespace SCompressLib SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("SCompressLib") { +namespace _impl { + +class _impl_SCompressParam; + +// Type metadata accessor for SCompressParam +SWIFT_EXTERN swift::_impl::MetadataResponseTy $s12SCompressLib0A5ParamVMa(swift::_impl::MetadataRequestTy) SWIFT_NOEXCEPT SWIFT_CALL; + + +} // namespace _impl + +class SWIFT_SYMBOL("s:12SCompressLib0A5ParamV") SCompressParam final { +public: + SWIFT_INLINE_THUNK ~SCompressParam() noexcept { + auto metadata = _impl::$s12SCompressLib0A5ParamVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->destroy(_getOpaquePointer(), metadata._0); + } + SWIFT_INLINE_THUNK SCompressParam(const SCompressParam &other) noexcept { + auto metadata = _impl::$s12SCompressLib0A5ParamVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + _storage = swift::_impl::OpaqueStorage(vwTable->size, vwTable->getAlignment()); + vwTable->initializeWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + } + SWIFT_INLINE_THUNK SCompressParam &operator =(const SCompressParam &other) noexcept { + auto metadata = _impl::$s12SCompressLib0A5ParamVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->assignWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + return *this; + } + SWIFT_INLINE_THUNK SCompressParam &operator =(SCompressParam &&other) = delete; + [[noreturn]] SWIFT_INLINE_PRIVATE_HELPER SCompressParam(SCompressParam &&) noexcept { + swift::_impl::_fatalError_Cxx_move_of_Swift_value_type_not_supported_yet(); + swift::_impl::_swift_stdlib_reportFatalError("swift", 5, "C++ does not support moving a Swift value yet", 45, 0); + abort(); + } + static SWIFT_INLINE_THUNK SCompressParam init() SWIFT_SYMBOL("s:12SCompressLib0A5ParamVACycfc"); + SWIFT_INLINE_THUNK int32_t getId() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV2ids5Int32Vvp"); + SWIFT_INLINE_THUNK void setId(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV2ids5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getWidth() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV5widths5Int32Vvp"); + SWIFT_INLINE_THUNK void setWidth(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV5widths5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getHeight() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV6heights5Int32Vvp"); + SWIFT_INLINE_THUNK void setHeight(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV6heights5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getStride() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV6strides5Int32Vvp"); + SWIFT_INLINE_THUNK void setStride(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV6strides5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getPixelFormat() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV11pixelFormats5Int32Vvp"); + SWIFT_INLINE_THUNK void setPixelFormat(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV11pixelFormats5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getTileWidth() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV9tileWidths5Int32Vvp"); + SWIFT_INLINE_THUNK void setTileWidth(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV9tileWidths5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getModeAlpha() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV9modeAlphas5Int32Vvp"); + SWIFT_INLINE_THUNK void setModeAlpha(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV9modeAlphas5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getModeRgb() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV7modeRgbs5Int32Vvp"); + SWIFT_INLINE_THUNK void setModeRgb(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV7modeRgbs5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getCmpMode() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV7cmpModes5Int32Vvp"); + SWIFT_INLINE_THUNK void setCmpMode(int32_t value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV7cmpModes5Int32Vvp"); + SWIFT_INLINE_THUNK swift::Array getRedChannel() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV10redChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK void setRedChannel(const swift::Array& value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV10redChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK swift::Array getGreenChannel() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK void setGreenChannel(const swift::Array& value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK swift::Array getBlueChannel() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK void setBlueChannel(const swift::Array& value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK swift::Array getAlphaChannel() const SWIFT_SYMBOL("s:12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK void setAlphaChannel(const swift::Array& value) SWIFT_SYMBOL("s:12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvp"); +private: + SWIFT_INLINE_THUNK SCompressParam(swift::_impl::ValueWitnessTable * _Nonnull vwTable) noexcept : _storage(vwTable->size, vwTable->getAlignment()) {} + static SWIFT_INLINE_THUNK SCompressParam _make() noexcept { + auto metadata = _impl::$s12SCompressLib0A5ParamVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + return SCompressParam(vwTable); + } + SWIFT_INLINE_THUNK const char * _Nonnull _getOpaquePointer() const noexcept { return _storage.getOpaquePointer(); } + SWIFT_INLINE_THUNK char * _Nonnull _getOpaquePointer() noexcept { return _storage.getOpaquePointer(); } + + swift::_impl::OpaqueStorage _storage; + friend class _impl::_impl_SCompressParam; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-identifier" + typedef char $s12SCompressLib0A5ParamVD; + static inline constexpr $s12SCompressLib0A5ParamVD __swift_mangled_name = 0; +#pragma clang diagnostic pop +#pragma clang diagnostic pop +}; + +namespace _impl { + +class _impl_SCompressParam { +public: + static SWIFT_INLINE_THUNK char * _Nonnull getOpaquePointer(SCompressParam &object) { return object._getOpaquePointer(); } + static SWIFT_INLINE_THUNK const char * _Nonnull getOpaquePointer(const SCompressParam &object) { return object._getOpaquePointer(); } + template + static SWIFT_INLINE_PRIVATE_HELPER SCompressParam returnNewValue(T callable) { + auto result = SCompressParam::_make(); + callable(result._getOpaquePointer()); + return result; + } + static SWIFT_INLINE_THUNK void initializeWithTake(char * _Nonnull destStorage, char * _Nonnull srcStorage) { + auto metadata = _impl::$s12SCompressLib0A5ParamVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithTake(destStorage, srcStorage, metadata._0); + } +}; + +} // namespace _impl + +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return SCompressLib::_impl::$s12SCompressLib0A5ParamVMa(0)._0; + } +}; +namespace _impl{ +template<> +static inline const constexpr bool isValueType = true; +template<> +static inline const constexpr bool isOpaqueLayout = true; +template<> +struct implClassFor { using type = SCompressLib::_impl::_impl_SCompressParam; }; +} // namespace +#pragma clang diagnostic pop +} // namespace swift + +namespace SCompressLib SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("SCompressLib") { + + +SWIFT_INLINE_THUNK void SCompressRets(swift::Int id, swift::Int state, swift::Int tileWidth, const swift::Array& retData) noexcept SWIFT_SYMBOL("s:12SCompressLib0A4Rets2id5state9tileWidth7retDataySi_S2iSays5UInt8VGtF") { + return _impl::$s12SCompressLib0A4Rets2id5state9tileWidth7retDataySi_S2iSays5UInt8VGtF(id, state, tileWidth, _impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(retData))); +} + + +SWIFT_INLINE_THUNK void SDecompressRet(swift::Int id, swift::Int state, swift::UInt width, swift::UInt height, swift::UInt format, const swift::Array& red, const swift::Array& green, const swift::Array& blue, const swift::Array& alpha) noexcept SWIFT_SYMBOL("s:12SCompressLib14SDecompressRet2id5state5width6height6format3red5green4blue5alphaySi_SiS3uSays5UInt8VGA3NtF") { + return _impl::$s12SCompressLib14SDecompressRet2id5state5width6height6format3red5green4blue5alphaySi_SiS3uSays5UInt8VGA3NtF(id, state, width, height, format, _impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(red)), _impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(green)), _impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(blue)), _impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(alpha))); +} + +class SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV") SDecompressRets; +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +static inline const constexpr bool isUsableInGenericContext = true; +#pragma clang diagnostic pop +} // namespace swift + +namespace SCompressLib SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("SCompressLib") { +namespace _impl { + +class _impl_SDecompressRets; + +// Type metadata accessor for SDecompressRets +SWIFT_EXTERN swift::_impl::MetadataResponseTy $s12SCompressLib15SDecompressRetsVMa(swift::_impl::MetadataRequestTy) SWIFT_NOEXCEPT SWIFT_CALL; + + +} // namespace _impl + +class SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV") SDecompressRets final { +public: + SWIFT_INLINE_THUNK ~SDecompressRets() noexcept { + auto metadata = _impl::$s12SCompressLib15SDecompressRetsVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->destroy(_getOpaquePointer(), metadata._0); + } + SWIFT_INLINE_THUNK SDecompressRets(const SDecompressRets &other) noexcept { + auto metadata = _impl::$s12SCompressLib15SDecompressRetsVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + _storage = swift::_impl::OpaqueStorage(vwTable->size, vwTable->getAlignment()); + vwTable->initializeWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + } + SWIFT_INLINE_THUNK SDecompressRets &operator =(const SDecompressRets &other) noexcept { + auto metadata = _impl::$s12SCompressLib15SDecompressRetsVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->assignWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + return *this; + } + SWIFT_INLINE_THUNK SDecompressRets &operator =(SDecompressRets &&other) = delete; + [[noreturn]] SWIFT_INLINE_PRIVATE_HELPER SDecompressRets(SDecompressRets &&) noexcept { + swift::_impl::_fatalError_Cxx_move_of_Swift_value_type_not_supported_yet(); + swift::_impl::_swift_stdlib_reportFatalError("swift", 5, "C++ does not support moving a Swift value yet", 45, 0); + abort(); + } + static SWIFT_INLINE_THUNK SDecompressRets init() SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsVACycfc"); + SWIFT_INLINE_THUNK int32_t getWidth() const SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV5widths5Int32Vvp"); + SWIFT_INLINE_THUNK void setWidth(int32_t value) SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV5widths5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getHeight() const SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV6heights5Int32Vvp"); + SWIFT_INLINE_THUNK void setHeight(int32_t value) SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV6heights5Int32Vvp"); + SWIFT_INLINE_THUNK int32_t getFormat() const SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV6formats5Int32Vvp"); + SWIFT_INLINE_THUNK void setFormat(int32_t value) SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV6formats5Int32Vvp"); + SWIFT_INLINE_THUNK swift::Array getRedChannel() const SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK void setRedChannel(const swift::Array& value) SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK swift::Array getGreenChannel() const SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK void setGreenChannel(const swift::Array& value) SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK swift::Array getBlueChannel() const SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK void setBlueChannel(const swift::Array& value) SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK swift::Array getAlphaChannel() const SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvp"); + SWIFT_INLINE_THUNK void setAlphaChannel(const swift::Array& value) SWIFT_SYMBOL("s:12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvp"); +private: + SWIFT_INLINE_THUNK SDecompressRets(swift::_impl::ValueWitnessTable * _Nonnull vwTable) noexcept : _storage(vwTable->size, vwTable->getAlignment()) {} + static SWIFT_INLINE_THUNK SDecompressRets _make() noexcept { + auto metadata = _impl::$s12SCompressLib15SDecompressRetsVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + return SDecompressRets(vwTable); + } + SWIFT_INLINE_THUNK const char * _Nonnull _getOpaquePointer() const noexcept { return _storage.getOpaquePointer(); } + SWIFT_INLINE_THUNK char * _Nonnull _getOpaquePointer() noexcept { return _storage.getOpaquePointer(); } + + swift::_impl::OpaqueStorage _storage; + friend class _impl::_impl_SDecompressRets; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-identifier" + typedef char $s12SCompressLib15SDecompressRetsVD; + static inline constexpr $s12SCompressLib15SDecompressRetsVD __swift_mangled_name = 0; +#pragma clang diagnostic pop +#pragma clang diagnostic pop +}; + +namespace _impl { + +class _impl_SDecompressRets { +public: + static SWIFT_INLINE_THUNK char * _Nonnull getOpaquePointer(SDecompressRets &object) { return object._getOpaquePointer(); } + static SWIFT_INLINE_THUNK const char * _Nonnull getOpaquePointer(const SDecompressRets &object) { return object._getOpaquePointer(); } + template + static SWIFT_INLINE_PRIVATE_HELPER SDecompressRets returnNewValue(T callable) { + auto result = SDecompressRets::_make(); + callable(result._getOpaquePointer()); + return result; + } + static SWIFT_INLINE_THUNK void initializeWithTake(char * _Nonnull destStorage, char * _Nonnull srcStorage) { + auto metadata = _impl::$s12SCompressLib15SDecompressRetsVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithTake(destStorage, srcStorage, metadata._0); + } +}; + +} // namespace _impl + +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return SCompressLib::_impl::$s12SCompressLib15SDecompressRetsVMa(0)._0; + } +}; +namespace _impl{ +template<> +static inline const constexpr bool isValueType = true; +template<> +static inline const constexpr bool isOpaqueLayout = true; +template<> +struct implClassFor { using type = SCompressLib::_impl::_impl_SDecompressRets; }; +} // namespace +#pragma clang diagnostic pop +} // namespace swift + +namespace SCompressLib SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("SCompressLib") { + +class SWIFT_SYMBOL("s:12SCompressLib10SPicZipApiV") SPicZipApi; +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +static inline const constexpr bool isUsableInGenericContext = true; +#pragma clang diagnostic pop +} // namespace swift + +namespace SCompressLib SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("SCompressLib") { +namespace _impl { + +class _impl_SPicZipApi; + +// Type metadata accessor for SPicZipApi +SWIFT_EXTERN swift::_impl::MetadataResponseTy $s12SCompressLib10SPicZipApiVMa(swift::_impl::MetadataRequestTy) SWIFT_NOEXCEPT SWIFT_CALL; + + +} // namespace _impl + +class SWIFT_SYMBOL("s:12SCompressLib10SPicZipApiV") SPicZipApi final { +public: + SWIFT_INLINE_THUNK ~SPicZipApi() noexcept { + auto metadata = _impl::$s12SCompressLib10SPicZipApiVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->destroy(_getOpaquePointer(), metadata._0); + } + SWIFT_INLINE_THUNK SPicZipApi(const SPicZipApi &other) noexcept { + auto metadata = _impl::$s12SCompressLib10SPicZipApiVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + _storage = swift::_impl::OpaqueStorage(vwTable->size, vwTable->getAlignment()); + vwTable->initializeWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + } + SWIFT_INLINE_THUNK SPicZipApi &operator =(const SPicZipApi &other) noexcept { + auto metadata = _impl::$s12SCompressLib10SPicZipApiVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->assignWithCopy(_getOpaquePointer(), const_cast(other._getOpaquePointer()), metadata._0); + return *this; + } + SWIFT_INLINE_THUNK SPicZipApi &operator =(SPicZipApi &&other) = delete; + [[noreturn]] SWIFT_INLINE_PRIVATE_HELPER SPicZipApi(SPicZipApi &&) noexcept { + swift::_impl::_fatalError_Cxx_move_of_Swift_value_type_not_supported_yet(); + swift::_impl::_swift_stdlib_reportFatalError("swift", 5, "C++ does not support moving a Swift value yet", 45, 0); + abort(); + } + static SWIFT_INLINE_THUNK SPicZipApi init() SWIFT_SYMBOL("s:12SCompressLib10SPicZipApiVACycfc"); + SWIFT_INLINE_THUNK void Compress(const SCompressParam& compressParam) const SWIFT_SYMBOL("s:12SCompressLib10SPicZipApiV8Compress13compressParamyAA0aH0V_tF"); + SWIFT_INLINE_THUNK void Decompress(uint32_t id, const swift::Array& fileBuffer) const SWIFT_SYMBOL("s:12SCompressLib10SPicZipApiV10Decompress2id10fileBufferys6UInt32V_Says5UInt8VGtF"); +private: + SWIFT_INLINE_THUNK SPicZipApi(swift::_impl::ValueWitnessTable * _Nonnull vwTable) noexcept : _storage(vwTable->size, vwTable->getAlignment()) {} + static SWIFT_INLINE_THUNK SPicZipApi _make() noexcept { + auto metadata = _impl::$s12SCompressLib10SPicZipApiVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + return SPicZipApi(vwTable); + } + SWIFT_INLINE_THUNK const char * _Nonnull _getOpaquePointer() const noexcept { return _storage.getOpaquePointer(); } + SWIFT_INLINE_THUNK char * _Nonnull _getOpaquePointer() noexcept { return _storage.getOpaquePointer(); } + + swift::_impl::OpaqueStorage _storage; + friend class _impl::_impl_SPicZipApi; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wreserved-identifier" + typedef char $s12SCompressLib10SPicZipApiVD; + static inline constexpr $s12SCompressLib10SPicZipApiVD __swift_mangled_name = 0; +#pragma clang diagnostic pop +#pragma clang diagnostic pop +}; + +namespace _impl { + +class _impl_SPicZipApi { +public: + static SWIFT_INLINE_THUNK char * _Nonnull getOpaquePointer(SPicZipApi &object) { return object._getOpaquePointer(); } + static SWIFT_INLINE_THUNK const char * _Nonnull getOpaquePointer(const SPicZipApi &object) { return object._getOpaquePointer(); } + template + static SWIFT_INLINE_PRIVATE_HELPER SPicZipApi returnNewValue(T callable) { + auto result = SPicZipApi::_make(); + callable(result._getOpaquePointer()); + return result; + } + static SWIFT_INLINE_THUNK void initializeWithTake(char * _Nonnull destStorage, char * _Nonnull srcStorage) { + auto metadata = _impl::$s12SCompressLib10SPicZipApiVMa(0); + auto *vwTableAddr = reinterpret_cast(metadata._0) - 1; +#ifdef __arm64e__ + auto *vwTable = reinterpret_cast(ptrauth_auth_data(reinterpret_cast(*vwTableAddr), ptrauth_key_process_independent_data, ptrauth_blend_discriminator(vwTableAddr, 11839))); +#else + auto *vwTable = *vwTableAddr; +#endif + vwTable->initializeWithTake(destStorage, srcStorage, metadata._0); + } +}; + +} // namespace _impl + +} // end namespace + +namespace swift SWIFT_PRIVATE_ATTR { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++17-extensions" +template<> +struct TypeMetadataTrait { + static SWIFT_INLINE_THUNK void * _Nonnull getTypeMetadata() { + return SCompressLib::_impl::$s12SCompressLib10SPicZipApiVMa(0)._0; + } +}; +namespace _impl{ +template<> +static inline const constexpr bool isValueType = true; +template<> +static inline const constexpr bool isOpaqueLayout = true; +template<> +struct implClassFor { using type = SCompressLib::_impl::_impl_SPicZipApi; }; +} // namespace +#pragma clang diagnostic pop +} // namespace swift + +namespace SCompressLib SWIFT_PRIVATE_ATTR SWIFT_SYMBOL_MODULE("SCompressLib") { + + + + SWIFT_INLINE_THUNK SCompressParam SCompressParam::init() { + return _impl::_impl_SCompressParam::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::$s12SCompressLib0A5ParamVACycfC(result); + }); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getId() const { + return _impl::$s12SCompressLib0A5ParamV2ids5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setId(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV2ids5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getWidth() const { + return _impl::$s12SCompressLib0A5ParamV5widths5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setWidth(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV5widths5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getHeight() const { + return _impl::$s12SCompressLib0A5ParamV6heights5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setHeight(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV6heights5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getStride() const { + return _impl::$s12SCompressLib0A5ParamV6strides5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setStride(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV6strides5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getPixelFormat() const { + return _impl::$s12SCompressLib0A5ParamV11pixelFormats5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setPixelFormat(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV11pixelFormats5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getTileWidth() const { + return _impl::$s12SCompressLib0A5ParamV9tileWidths5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setTileWidth(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV9tileWidths5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getModeAlpha() const { + return _impl::$s12SCompressLib0A5ParamV9modeAlphas5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setModeAlpha(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV9modeAlphas5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getModeRgb() const { + return _impl::$s12SCompressLib0A5ParamV7modeRgbs5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setModeRgb(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV7modeRgbs5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SCompressParam::getCmpMode() const { + return _impl::$s12SCompressLib0A5ParamV7cmpModes5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SCompressParam::setCmpMode(int32_t value) { + return _impl::$s12SCompressLib0A5ParamV7cmpModes5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Array SCompressParam::getRedChannel() const { + return swift::_impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_SCompressLib_void_ptr_0_8(result, _impl::$s12SCompressLib0A5ParamV10redChannelSays5UInt8VGvg(_getOpaquePointer())); + }); + } + SWIFT_INLINE_THUNK void SCompressParam::setRedChannel(const swift::Array& value) { + return _impl::$s12SCompressLib0A5ParamV10redChannelSays5UInt8VGvs(_impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(value)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Array SCompressParam::getGreenChannel() const { + return swift::_impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_SCompressLib_void_ptr_0_8(result, _impl::$s12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvg(_getOpaquePointer())); + }); + } + SWIFT_INLINE_THUNK void SCompressParam::setGreenChannel(const swift::Array& value) { + return _impl::$s12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvs(_impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(value)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Array SCompressParam::getBlueChannel() const { + return swift::_impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_SCompressLib_void_ptr_0_8(result, _impl::$s12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvg(_getOpaquePointer())); + }); + } + SWIFT_INLINE_THUNK void SCompressParam::setBlueChannel(const swift::Array& value) { + return _impl::$s12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvs(_impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(value)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Array SCompressParam::getAlphaChannel() const { + return swift::_impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_SCompressLib_void_ptr_0_8(result, _impl::$s12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvg(_getOpaquePointer())); + }); + } + SWIFT_INLINE_THUNK void SCompressParam::setAlphaChannel(const swift::Array& value) { + return _impl::$s12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvs(_impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(value)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK SDecompressRets SDecompressRets::init() { + return _impl::_impl_SDecompressRets::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::$s12SCompressLib15SDecompressRetsVACycfC(result); + }); + } + SWIFT_INLINE_THUNK int32_t SDecompressRets::getWidth() const { + return _impl::$s12SCompressLib15SDecompressRetsV5widths5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SDecompressRets::setWidth(int32_t value) { + return _impl::$s12SCompressLib15SDecompressRetsV5widths5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SDecompressRets::getHeight() const { + return _impl::$s12SCompressLib15SDecompressRetsV6heights5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SDecompressRets::setHeight(int32_t value) { + return _impl::$s12SCompressLib15SDecompressRetsV6heights5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK int32_t SDecompressRets::getFormat() const { + return _impl::$s12SCompressLib15SDecompressRetsV6formats5Int32Vvg(_getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SDecompressRets::setFormat(int32_t value) { + return _impl::$s12SCompressLib15SDecompressRetsV6formats5Int32Vvs(value, _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Array SDecompressRets::getRedChannel() const { + return swift::_impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_SCompressLib_void_ptr_0_8(result, _impl::$s12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvg(_getOpaquePointer())); + }); + } + SWIFT_INLINE_THUNK void SDecompressRets::setRedChannel(const swift::Array& value) { + return _impl::$s12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvs(_impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(value)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Array SDecompressRets::getGreenChannel() const { + return swift::_impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_SCompressLib_void_ptr_0_8(result, _impl::$s12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvg(_getOpaquePointer())); + }); + } + SWIFT_INLINE_THUNK void SDecompressRets::setGreenChannel(const swift::Array& value) { + return _impl::$s12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvs(_impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(value)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Array SDecompressRets::getBlueChannel() const { + return swift::_impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_SCompressLib_void_ptr_0_8(result, _impl::$s12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvg(_getOpaquePointer())); + }); + } + SWIFT_INLINE_THUNK void SDecompressRets::setBlueChannel(const swift::Array& value) { + return _impl::$s12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvs(_impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(value)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK swift::Array SDecompressRets::getAlphaChannel() const { + return swift::_impl::_impl_Array::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::swift_interop_returnDirect_SCompressLib_void_ptr_0_8(result, _impl::$s12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvg(_getOpaquePointer())); + }); + } + SWIFT_INLINE_THUNK void SDecompressRets::setAlphaChannel(const swift::Array& value) { + return _impl::$s12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvs(_impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(value)), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK SPicZipApi SPicZipApi::init() { + return _impl::_impl_SPicZipApi::returnNewValue([&](char * _Nonnull result) SWIFT_INLINE_THUNK_ATTRIBUTES { + _impl::$s12SCompressLib10SPicZipApiVACycfC(result); + }); + } + SWIFT_INLINE_THUNK void SPicZipApi::Compress(const SCompressParam& compressParam) const { + return _impl::$s12SCompressLib10SPicZipApiV8Compress13compressParamyAA0aH0V_tF(_impl::_impl_SCompressParam::getOpaquePointer(compressParam), _getOpaquePointer()); + } + SWIFT_INLINE_THUNK void SPicZipApi::Decompress(uint32_t id, const swift::Array& fileBuffer) const { + return _impl::$s12SCompressLib10SPicZipApiV10Decompress2id10fileBufferys6UInt32V_Says5UInt8VGtF(id, _impl::swift_interop_passDirect_SCompressLib_void_ptr_0_8(swift::_impl::_impl_Array::getOpaquePointer(fileBuffer)), _getOpaquePointer()); + } + +class PicZipEvent { } SWIFT_UNAVAILABLE_MSG("protocol 'PicZipEvent' can not yet be represented in C++"); + +// Unavailable in C++: Swift global function 'SetZipEvent(picEvent:)'. + +} // namespace SCompressLib + +#undef SWIFT_SYMBOL +#endif +#pragma clang diagnostic pop +#endif + +#else +#error unsupported Swift architecture +#endif diff --git a/MixSdk/Example/SCompressLib.framework/Headers/SCompressLib.h b/MixSdk/Example/SCompressLib.framework/Headers/SCompressLib.h new file mode 100644 index 0000000..7a1cbf2 --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/Headers/SCompressLib.h @@ -0,0 +1,18 @@ +// +// SCompressLib.h +// SCompressLib +// +// Created by l30037444 on 2023/10/26. +// + +#import + +//! Project version number for SCompressLib. +FOUNDATION_EXPORT double SCompressLibVersionNumber; + +//! Project version string for SCompressLib. +FOUNDATION_EXPORT const unsigned char SCompressLibVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + +#import diff --git a/MixSdk/Example/SCompressLib.framework/ICE_V5R1_BLOCK_HTC.cfg b/MixSdk/Example/SCompressLib.framework/ICE_V5R1_BLOCK_HTC.cfg new file mode 100644 index 0000000..c79a4af --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/ICE_V5R1_BLOCK_HTC.cfg @@ -0,0 +1,28 @@ +input_file = "sample_A044_020.bgra8888" #"msaa__width_1__theta_whole.data" + #"06_crossCountryskiing_sportrecord_notarget_7.bgra8888" + #"A007_compress_card_copy_4_454_454_480x460.bgra8888" + #"sample_A034_011_240x240.bgra8888" #sample_A035_007_240x240 #A007_compress_imply_454_454_480x460 + #A009_adjust_success_454_454_480x460 #A008_breath_rhythm_454_454_480x460 #A010_compass_454_454_480x460 + #sample_A047_002_400x400 #A010_compass_chinese_edtion_454_454_480x460 #A010_compass_obstructed_454_454_480x460 + #A008_breath_start_454_454_480x460 #A008_breath5inspiration_908_908_960x960 + #watch_1_250_250_256x256 +output_file = "test.yuv" +cmp_ratio_file = "cmp_ratio.txt" +bs_file = "11.bs" +head_file = "11.head" +is_enc = 1 +frm_start = 0 +frm_len = 1 +cmp_mode = 0 # 0 -- cmp 1 -- bypass +frame_width = 154 +frame_height = 154 +pix_format = 4 #0 -- YUV420 1 -- YUV422 2 -- YUV444 3 -- rgb 4 -- argb 5 -- RGBW +is_rgb_offline = 0 #0 -- rgb cmp online 1 -- alpha cmp offline +is_a_offline = 0 #0 -- alpha cmp online 1 -- alpha cmp offline +is_a_bypass = 0 #0 -- bit truncation(2x 4 bit) 1 -- bypass +bit_depth = 0 #0 -- 8bit 1-- 10 bit 2 -- 12bit 3 -- 14bit +ratio = 3 #cmp ratio of RGB (Alpha 2x only) + +###### graphic paras ###### +grph_en = 1 +grph_loss_thr = 286331153 #0x11111111 diff --git a/MixSdk/Example/SCompressLib.framework/ICE_V5R1_BLOCK_HTC_RM.cfg b/MixSdk/Example/SCompressLib.framework/ICE_V5R1_BLOCK_HTC_RM.cfg new file mode 100644 index 0000000..4232a27 --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/ICE_V5R1_BLOCK_HTC_RM.cfg @@ -0,0 +1,34 @@ +input_file = "A100_079.rgb" #"sample_A061_022.bgra8888" #466_chinese_cvt_466x466.bgra8888 +output_file = "A100_079_4x.rgb" +bs_file = "A100_028_4x.bs" #"sample_A061_022.astc" +is_enc = 1 +cmp_mode = 0 +frame_width = 82 +frame_height = 94 +pix_format = 0 # 0-- rgb888_packed 1-- argb8888_packed 2-- rgb565_packed, 1 pixel takes 2byte, MSB-rrrrrggggggbbbbb-LSB +profile = 1 # 0-- ASTC(2D 4x4 sRGB) only 1-- HTC; + # profile 0 is a subset of profile 1, but has a different file header + # profile 0 is disallowed when rgb565 (pix_format: 2) +ut_type_mode = 0 + +######## ***** OFFLINE ***** ######## +stride = 82 # image stride in pixel, default equal to frame_width, +tile_width = 4 # TILE size: 4-- 4x4, 6-- 6x4, 8-- 8x4, 16-- 16x4 +mode_alpha = 1 # 0-- A_BYPASS, 1-- A_MERGE, 2-- A_SEPARATE, 3-- A_CONST, 4-- A_BINARY; valid only if pixel format is argb + ### A_BYPASS: alpha bypass + ### A_MERGE: alpha is compressed with rgb as argb + ### A_SEPARATE: alpha is compressed separately in 2x + ### A_CONST: alpha is treated as a constant value which symbolized in file header + ### A_BINARY: only 2 values available, the 2 values are both symbolized in file header, typically 0 or 255 +mode_rgb = 1 # 0-- RGB_BYPASS, 1-- RGB_ASTC, 2-- RGB_TABLE, 3-- RGB_CONST ,4-- RGB_BINARY + ### RGB_BYPASS: rgb bypass + ### RGB_ASTC: rgb or argb is compressed using ASTC-based tool + ### RGB_TABLE: only 4 colors available, the 4 colos are both symbolized in file header + ### RGB_CONST: all pixels are treated as a constant value which symbolized in file header + ### RGB_BINARY: only 2 colors available, the 2 colos are both symbolized in file header + + +######## ***** ONLINE ***** ######## +#is_a_offline = 1 # 0 -- alpha cmp_online 1 -- alpha cmp_offline +#is_a_bypass = 0 # 0 -- alpha cmp 2x 1 -- alpha bypass +#is_lossless = 0 \ No newline at end of file diff --git a/MixSdk/Example/SCompressLib.framework/Info.plist b/MixSdk/Example/SCompressLib.framework/Info.plist new file mode 100644 index 0000000..0bd31a4 Binary files /dev/null and b/MixSdk/Example/SCompressLib.framework/Info.plist differ diff --git a/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo new file mode 100644 index 0000000..0ca8a17 Binary files /dev/null and b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo differ diff --git a/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.abi.json b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.abi.json new file mode 100644 index 0000000..285192e --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.abi.json @@ -0,0 +1,2633 @@ +{ + "ABIRoot": { + "kind": "Root", + "name": "TopLevel", + "printedName": "TopLevel", + "children": [ + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "SCompressLib", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "SPicZipApi", + "printedName": "SPicZipApi", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "SPicZipApi", + "printedName": "SCompressLib.SPicZipApi", + "usr": "s:12SCompressLib10SPicZipApiV" + } + ], + "declKind": "Constructor", + "usr": "s:12SCompressLib10SPicZipApiVACycfc", + "mangledName": "$s12SCompressLib10SPicZipApiVACycfc", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Function", + "name": "Compress", + "printedName": "Compress(compressParam:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SCompressParam", + "printedName": "SCompressLib.SCompressParam", + "usr": "s:12SCompressLib0A5ParamV" + } + ], + "declKind": "Func", + "usr": "s:12SCompressLib10SPicZipApiV8Compress13compressParamyAA0aH0V_tF", + "mangledName": "$s12SCompressLib10SPicZipApiV8Compress13compressParamyAA0aH0V_tF", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "Decompress", + "printedName": "Decompress(id:fileBuffer:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "UInt32", + "printedName": "Swift.UInt32", + "usr": "s:s6UInt32V" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Func", + "usr": "s:12SCompressLib10SPicZipApiV10Decompress2id10fileBufferys6UInt32V_Says5UInt8VGtF", + "mangledName": "$s12SCompressLib10SPicZipApiV10Decompress2id10fileBufferys6UInt32V_Says5UInt8VGtF", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Struct", + "usr": "s:12SCompressLib10SPicZipApiV", + "mangledName": "$s12SCompressLib10SPicZipApiV", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ] + }, + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "SCompressLib", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "SDecompressRets", + "printedName": "SDecompressRets", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "SDecompressRets", + "printedName": "SCompressLib.SDecompressRets", + "usr": "s:12SCompressLib15SDecompressRetsV" + } + ], + "declKind": "Constructor", + "usr": "s:12SCompressLib15SDecompressRetsVACycfc", + "mangledName": "$s12SCompressLib15SDecompressRetsVACycfc", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Var", + "name": "width", + "printedName": "width", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib15SDecompressRetsV5widths5Int32Vvp", + "mangledName": "$s12SCompressLib15SDecompressRetsV5widths5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV5widths5Int32Vvg", + "mangledName": "$s12SCompressLib15SDecompressRetsV5widths5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV5widths5Int32Vvs", + "mangledName": "$s12SCompressLib15SDecompressRetsV5widths5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV5widths5Int32VvM", + "mangledName": "$s12SCompressLib15SDecompressRetsV5widths5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "height", + "printedName": "height", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib15SDecompressRetsV6heights5Int32Vvp", + "mangledName": "$s12SCompressLib15SDecompressRetsV6heights5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV6heights5Int32Vvg", + "mangledName": "$s12SCompressLib15SDecompressRetsV6heights5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV6heights5Int32Vvs", + "mangledName": "$s12SCompressLib15SDecompressRetsV6heights5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV6heights5Int32VvM", + "mangledName": "$s12SCompressLib15SDecompressRetsV6heights5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "format", + "printedName": "format", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib15SDecompressRetsV6formats5Int32Vvp", + "mangledName": "$s12SCompressLib15SDecompressRetsV6formats5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV6formats5Int32Vvg", + "mangledName": "$s12SCompressLib15SDecompressRetsV6formats5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV6formats5Int32Vvs", + "mangledName": "$s12SCompressLib15SDecompressRetsV6formats5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV6formats5Int32VvM", + "mangledName": "$s12SCompressLib15SDecompressRetsV6formats5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "redChannel", + "printedName": "redChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvp", + "mangledName": "$s12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvg", + "mangledName": "$s12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvs", + "mangledName": "$s12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvM", + "mangledName": "$s12SCompressLib15SDecompressRetsV10redChannelSays5UInt8VGvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "greenChannel", + "printedName": "greenChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvp", + "mangledName": "$s12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvg", + "mangledName": "$s12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvs", + "mangledName": "$s12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvM", + "mangledName": "$s12SCompressLib15SDecompressRetsV12greenChannelSays5UInt8VGvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "blueChannel", + "printedName": "blueChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvp", + "mangledName": "$s12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvg", + "mangledName": "$s12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvs", + "mangledName": "$s12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvM", + "mangledName": "$s12SCompressLib15SDecompressRetsV11blueChannelSays5UInt8VGvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "alphaChannel", + "printedName": "alphaChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvp", + "mangledName": "$s12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvg", + "mangledName": "$s12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvs", + "mangledName": "$s12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvM", + "mangledName": "$s12SCompressLib15SDecompressRetsV12alphaChannelSays5UInt8VGvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + } + ], + "declKind": "Struct", + "usr": "s:12SCompressLib15SDecompressRetsV", + "mangledName": "$s12SCompressLib15SDecompressRetsV", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ] + }, + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "SCompressLib", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "SCompressParam", + "printedName": "SCompressParam", + "children": [ + { + "kind": "Constructor", + "name": "init", + "printedName": "init()", + "children": [ + { + "kind": "TypeNominal", + "name": "SCompressParam", + "printedName": "SCompressLib.SCompressParam", + "usr": "s:12SCompressLib0A5ParamV" + } + ], + "declKind": "Constructor", + "usr": "s:12SCompressLib0A5ParamVACycfc", + "mangledName": "$s12SCompressLib0A5ParamVACycfc", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ], + "init_kind": "Designated" + }, + { + "kind": "Var", + "name": "id", + "printedName": "id", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV2ids5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV2ids5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV2ids5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV2ids5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV2ids5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV2ids5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV2ids5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV2ids5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "width", + "printedName": "width", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV5widths5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV5widths5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV5widths5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV5widths5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV5widths5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV5widths5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV5widths5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV5widths5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "height", + "printedName": "height", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV6heights5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV6heights5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV6heights5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV6heights5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV6heights5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV6heights5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV6heights5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV6heights5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "stride", + "printedName": "stride", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV6strides5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV6strides5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV6strides5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV6strides5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV6strides5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV6strides5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV6strides5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV6strides5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "pixelFormat", + "printedName": "pixelFormat", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV11pixelFormats5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV11pixelFormats5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV11pixelFormats5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV11pixelFormats5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV11pixelFormats5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV11pixelFormats5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV11pixelFormats5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV11pixelFormats5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "tileWidth", + "printedName": "tileWidth", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV9tileWidths5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV9tileWidths5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV9tileWidths5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV9tileWidths5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV9tileWidths5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV9tileWidths5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV9tileWidths5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV9tileWidths5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "modeAlpha", + "printedName": "modeAlpha", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV9modeAlphas5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV9modeAlphas5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV9modeAlphas5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV9modeAlphas5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV9modeAlphas5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV9modeAlphas5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV9modeAlphas5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV9modeAlphas5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "modeRgb", + "printedName": "modeRgb", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV7modeRgbs5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV7modeRgbs5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV7modeRgbs5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV7modeRgbs5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV7modeRgbs5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV7modeRgbs5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV7modeRgbs5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV7modeRgbs5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "cmpMode", + "printedName": "cmpMode", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV7cmpModes5Int32Vvp", + "mangledName": "$s12SCompressLib0A5ParamV7cmpModes5Int32Vvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV7cmpModes5Int32Vvg", + "mangledName": "$s12SCompressLib0A5ParamV7cmpModes5Int32Vvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int32", + "printedName": "Swift.Int32", + "usr": "s:s5Int32V" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV7cmpModes5Int32Vvs", + "mangledName": "$s12SCompressLib0A5ParamV7cmpModes5Int32Vvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV7cmpModes5Int32VvM", + "mangledName": "$s12SCompressLib0A5ParamV7cmpModes5Int32VvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "redChannel", + "printedName": "redChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV10redChannelSays5UInt8VGvp", + "mangledName": "$s12SCompressLib0A5ParamV10redChannelSays5UInt8VGvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV10redChannelSays5UInt8VGvg", + "mangledName": "$s12SCompressLib0A5ParamV10redChannelSays5UInt8VGvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV10redChannelSays5UInt8VGvs", + "mangledName": "$s12SCompressLib0A5ParamV10redChannelSays5UInt8VGvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV10redChannelSays5UInt8VGvM", + "mangledName": "$s12SCompressLib0A5ParamV10redChannelSays5UInt8VGvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "greenChannel", + "printedName": "greenChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvp", + "mangledName": "$s12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvg", + "mangledName": "$s12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvs", + "mangledName": "$s12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvM", + "mangledName": "$s12SCompressLib0A5ParamV12greenChannelSays5UInt8VGvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "blueChannel", + "printedName": "blueChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvp", + "mangledName": "$s12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvg", + "mangledName": "$s12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvs", + "mangledName": "$s12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvM", + "mangledName": "$s12SCompressLib0A5ParamV11blueChannelSays5UInt8VGvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "alphaChannel", + "printedName": "alphaChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Var", + "usr": "s:12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvp", + "mangledName": "$s12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvp", + "moduleName": "SCompressLib", + "declAttributes": [ + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvg", + "mangledName": "$s12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvg", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvs", + "mangledName": "$s12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvs", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvM", + "mangledName": "$s12SCompressLib0A5ParamV12alphaChannelSays5UInt8VGvM", + "moduleName": "SCompressLib", + "implicit": true, + "accessorKind": "_modify" + } + ] + } + ], + "declKind": "Struct", + "usr": "s:12SCompressLib0A5ParamV", + "mangledName": "$s12SCompressLib0A5ParamV", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ] + }, + { + "kind": "Import", + "name": "Foundation", + "printedName": "Foundation", + "declKind": "Import", + "moduleName": "SCompressLib", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "TypeDecl", + "name": "PicZipEvent", + "printedName": "PicZipEvent", + "children": [ + { + "kind": "Function", + "name": "CompressRets", + "printedName": "CompressRets(id:state:tileWidth:retData:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Func", + "usr": "s:12SCompressLib11PicZipEventP12CompressRets2id5state9tileWidth7retDataySi_S2iSays5UInt8VGtF", + "mangledName": "$s12SCompressLib11PicZipEventP12CompressRets2id5state9tileWidth7retDataySi_S2iSays5UInt8VGtF", + "moduleName": "SCompressLib", + "genericSig": "<τ_0_0 where τ_0_0 : SCompressLib.PicZipEvent>", + "sugared_genericSig": "", + "protocolReq": true, + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "DecompressRets", + "printedName": "DecompressRets(id:state:decomRets:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "SDecompressRets", + "printedName": "SCompressLib.SDecompressRets", + "usr": "s:12SCompressLib15SDecompressRetsV" + } + ], + "declKind": "Func", + "usr": "s:12SCompressLib11PicZipEventP14DecompressRets2id5state05decomG0ySi_SiAA011SDecompressG0VtF", + "mangledName": "$s12SCompressLib11PicZipEventP14DecompressRets2id5state05decomG0ySi_SiAA011SDecompressG0VtF", + "moduleName": "SCompressLib", + "genericSig": "<τ_0_0 where τ_0_0 : SCompressLib.PicZipEvent>", + "sugared_genericSig": "", + "protocolReq": true, + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Protocol", + "usr": "s:12SCompressLib11PicZipEventP", + "mangledName": "$s12SCompressLib11PicZipEventP", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ] + }, + { + "kind": "Function", + "name": "SetZipEvent", + "printedName": "SetZipEvent(picEvent:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "PicZipEvent", + "printedName": "SCompressLib.PicZipEvent", + "usr": "s:12SCompressLib11PicZipEventP" + } + ], + "declKind": "Func", + "usr": "s:12SCompressLib11SetZipEvent03picE0yAA03PicdE0_p_tF", + "mangledName": "$s12SCompressLib11SetZipEvent03picE0yAA03PicdE0_p_tF", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "SCompressRets", + "printedName": "SCompressRets(id:state:tileWidth:retData:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Func", + "usr": "s:12SCompressLib0A4Rets2id5state9tileWidth7retDataySi_S2iSays5UInt8VGtF", + "mangledName": "$s12SCompressLib0A4Rets2id5state9tileWidth7retDataySi_S2iSays5UInt8VGtF", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "SDecompressRet", + "printedName": "SDecompressRet(id:state:width:height:format:red:green:blue:alpha:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + }, + { + "kind": "TypeNominal", + "name": "UInt", + "printedName": "Swift.UInt", + "usr": "s:Su" + }, + { + "kind": "TypeNominal", + "name": "UInt", + "printedName": "Swift.UInt", + "usr": "s:Su" + }, + { + "kind": "TypeNominal", + "name": "UInt", + "printedName": "Swift.UInt", + "usr": "s:Su" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + }, + { + "kind": "TypeNominal", + "name": "Array", + "printedName": "[Swift.UInt8]", + "children": [ + { + "kind": "TypeNominal", + "name": "UInt8", + "printedName": "Swift.UInt8", + "usr": "s:s5UInt8V" + } + ], + "usr": "s:Sa" + } + ], + "declKind": "Func", + "usr": "s:12SCompressLib14SDecompressRet2id5state5width6height6format3red5green4blue5alphaySi_SiS3uSays5UInt8VGA3NtF", + "mangledName": "$s12SCompressLib14SDecompressRet2id5state5width6height6format3red5green4blue5alphaySi_SiS3uSays5UInt8VGA3NtF", + "moduleName": "SCompressLib", + "declAttributes": [ + "AccessControl" + ], + "funcSelfKind": "NonMutating" + } + ], + "json_format_version": 8 + }, + "ConstValues": [ + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/SPicZipApi.swift", + "kind": "StringLiteral", + "offset": 1926, + "length": 24, + "value": "\"Decompress id == \"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/SPicZipApi.swift", + "kind": "StringLiteral", + "offset": 1949, + "length": 2, + "value": "\"\"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/DecomressRets.swift", + "kind": "IntegerLiteral", + "offset": 179, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/DecomressRets.swift", + "kind": "IntegerLiteral", + "offset": 198, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/DecomressRets.swift", + "kind": "IntegerLiteral", + "offset": 217, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/DecomressRets.swift", + "kind": "Array", + "offset": 240, + "length": 2, + "value": "[]" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/DecomressRets.swift", + "kind": "Array", + "offset": 266, + "length": 2, + "value": "[]" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/DecomressRets.swift", + "kind": "Array", + "offset": 291, + "length": 2, + "value": "[]" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/DecomressRets.swift", + "kind": "Array", + "offset": 317, + "length": 2, + "value": "[]" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 174, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 192, + "length": 3, + "value": "800" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 213, + "length": 4, + "value": "1280" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 235, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 259, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 281, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 303, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 323, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "IntegerLiteral", + "offset": 343, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "Array", + "offset": 366, + "length": 2, + "value": "[]" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "Array", + "offset": 392, + "length": 2, + "value": "[]" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "Array", + "offset": 417, + "length": 2, + "value": "[]" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/CompressParam.swift", + "kind": "Array", + "offset": 443, + "length": 2, + "value": "[]" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 501, + "length": 13, + "value": "\"id == \"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 513, + "length": 2, + "value": "\"\"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 526, + "length": 19, + "value": "\"state == \"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 544, + "length": 2, + "value": "\"\"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 557, + "length": 27, + "value": "\"tileWidth == \"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 583, + "length": 2, + "value": "\"\"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 899, + "length": 13, + "value": "\"id == \"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 911, + "length": 2, + "value": "\"\"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 924, + "length": 19, + "value": "\"state == \"" + }, + { + "filePath": "\/Users\/l30037444\/Desktop\/Code\/SCompressDemo\/SCompressLib\/API.swift", + "kind": "StringLiteral", + "offset": 942, + "length": 2, + "value": "\"\"" + } + ] +} \ No newline at end of file diff --git a/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.private.swiftinterface b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.private.swiftinterface new file mode 100644 index 0000000..4016fa0 --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.private.swiftinterface @@ -0,0 +1,48 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1) +// swift-module-flags: -target arm64-apple-ios12.0 -enable-objc-interop -cxx-interoperability-mode=default -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name SCompressLib +// swift-module-flags-ignorable: -enable-bare-slash-regex +import Foundation +@_exported import SCompressLib +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +public struct SPicZipApi { + public init() + public func Compress(compressParam: SCompressLib.SCompressParam) + public func Decompress(id: Swift.UInt32, fileBuffer: [Swift.UInt8]) +} +public struct SDecompressRets { + public init() + public var width: Swift.Int32 + public var height: Swift.Int32 + public var format: Swift.Int32 + public var redChannel: [Swift.UInt8] + public var greenChannel: [Swift.UInt8] + public var blueChannel: [Swift.UInt8] + public var alphaChannel: [Swift.UInt8] +} +public struct SCompressParam { + public init() + public var id: Swift.Int32 + public var width: Swift.Int32 + public var height: Swift.Int32 + public var stride: Swift.Int32 + public var pixelFormat: Swift.Int32 + public var tileWidth: Swift.Int32 + public var modeAlpha: Swift.Int32 + public var modeRgb: Swift.Int32 + public var cmpMode: Swift.Int32 + public var redChannel: [Swift.UInt8] + public var greenChannel: [Swift.UInt8] + public var blueChannel: [Swift.UInt8] + public var alphaChannel: [Swift.UInt8] +} +public protocol PicZipEvent { + func CompressRets(id: Swift.Int, state: Swift.Int, tileWidth: Swift.Int, retData: [Swift.UInt8]) + func DecompressRets(id: Swift.Int, state: Swift.Int, decomRets: SCompressLib.SDecompressRets) +} +public func SetZipEvent(picEvent: any SCompressLib.PicZipEvent) +public func SCompressRets(id: Swift.Int, state: Swift.Int, tileWidth: Swift.Int, retData: [Swift.UInt8]) +public func SDecompressRet(id: Swift.Int, state: Swift.Int, width: Swift.UInt, height: Swift.UInt, format: Swift.UInt, red: [Swift.UInt8], green: [Swift.UInt8], blue: [Swift.UInt8], alpha: [Swift.UInt8]) diff --git a/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftdoc b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftdoc new file mode 100644 index 0000000..1eda4a0 Binary files /dev/null and b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftdoc differ diff --git a/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftinterface b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftinterface new file mode 100644 index 0000000..4016fa0 --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftinterface @@ -0,0 +1,48 @@ +// swift-interface-format-version: 1.0 +// swift-compiler-version: Apple Swift version 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1) +// swift-module-flags: -target arm64-apple-ios12.0 -enable-objc-interop -cxx-interoperability-mode=default -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name SCompressLib +// swift-module-flags-ignorable: -enable-bare-slash-regex +import Foundation +@_exported import SCompressLib +import Swift +import _Concurrency +import _StringProcessing +import _SwiftConcurrencyShims +public struct SPicZipApi { + public init() + public func Compress(compressParam: SCompressLib.SCompressParam) + public func Decompress(id: Swift.UInt32, fileBuffer: [Swift.UInt8]) +} +public struct SDecompressRets { + public init() + public var width: Swift.Int32 + public var height: Swift.Int32 + public var format: Swift.Int32 + public var redChannel: [Swift.UInt8] + public var greenChannel: [Swift.UInt8] + public var blueChannel: [Swift.UInt8] + public var alphaChannel: [Swift.UInt8] +} +public struct SCompressParam { + public init() + public var id: Swift.Int32 + public var width: Swift.Int32 + public var height: Swift.Int32 + public var stride: Swift.Int32 + public var pixelFormat: Swift.Int32 + public var tileWidth: Swift.Int32 + public var modeAlpha: Swift.Int32 + public var modeRgb: Swift.Int32 + public var cmpMode: Swift.Int32 + public var redChannel: [Swift.UInt8] + public var greenChannel: [Swift.UInt8] + public var blueChannel: [Swift.UInt8] + public var alphaChannel: [Swift.UInt8] +} +public protocol PicZipEvent { + func CompressRets(id: Swift.Int, state: Swift.Int, tileWidth: Swift.Int, retData: [Swift.UInt8]) + func DecompressRets(id: Swift.Int, state: Swift.Int, decomRets: SCompressLib.SDecompressRets) +} +public func SetZipEvent(picEvent: any SCompressLib.PicZipEvent) +public func SCompressRets(id: Swift.Int, state: Swift.Int, tileWidth: Swift.Int, retData: [Swift.UInt8]) +public func SDecompressRet(id: Swift.Int, state: Swift.Int, width: Swift.UInt, height: Swift.UInt, format: Swift.UInt, red: [Swift.UInt8], green: [Swift.UInt8], blue: [Swift.UInt8], alpha: [Swift.UInt8]) diff --git a/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftmodule b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftmodule new file mode 100644 index 0000000..379ffb1 Binary files /dev/null and b/MixSdk/Example/SCompressLib.framework/Modules/SCompressLib.swiftmodule/arm64-apple-ios.swiftmodule differ diff --git a/MixSdk/Example/SCompressLib.framework/Modules/module.modulemap b/MixSdk/Example/SCompressLib.framework/Modules/module.modulemap new file mode 100644 index 0000000..0df02e1 --- /dev/null +++ b/MixSdk/Example/SCompressLib.framework/Modules/module.modulemap @@ -0,0 +1,11 @@ +framework module SCompressLib { + umbrella header "SCompressLib.h" + export * + + module * { export * } +} + +module SCompressLib.Swift { + header "SCompressLib-Swift.h" + requires objc +} diff --git a/MixSdk/Example/SCompressLib.framework/SCompressLib b/MixSdk/Example/SCompressLib.framework/SCompressLib new file mode 100644 index 0000000..fd74335 Binary files /dev/null and b/MixSdk/Example/SCompressLib.framework/SCompressLib differ diff --git a/MixSdk/MixSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate b/MixSdk/MixSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate index 5a9a36d..6d53a6b 100644 Binary files a/MixSdk/MixSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate and b/MixSdk/MixSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/MixSdk/MixSdk.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/MixSdk/MixSdk.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index a1a8a88..2155d5d 100644 --- a/MixSdk/MixSdk.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/MixSdk/MixSdk.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -68,5 +68,21 @@ + + + + diff --git a/MixSdk/MixSdk/MixSdk.xcodeproj/project.pbxproj b/MixSdk/MixSdk/MixSdk.xcodeproj/project.pbxproj index 27dc4a3..92a2441 100644 --- a/MixSdk/MixSdk/MixSdk.xcodeproj/project.pbxproj +++ b/MixSdk/MixSdk/MixSdk.xcodeproj/project.pbxproj @@ -44,6 +44,7 @@ 18314AA42C3D37EE0028CE50 /* AudioTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = 18314AA02C3D37ED0028CE50 /* AudioTransform.m */; }; 184FFC542C21B091006F664D /* MSAigcModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 184FFC532C21B091006F664D /* MSAigcModel.swift */; }; 186BFD492C57915500673D8C /* MSVoiceChat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 186BFD482C57915500673D8C /* MSVoiceChat.swift */; }; + 187C54642C6B7C4B0022C3D4 /* MSCompress.swift in Sources */ = {isa = PBXBuildFile; fileRef = 187C54632C6B7C4B0022C3D4 /* MSCompress.swift */; }; 188695A22C59DA5700B9B89F /* MSVoiceChatModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 188695A12C59DA5700B9B89F /* MSVoiceChatModel.swift */; }; 18A2DCC92C40D94800A8731B /* AES.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18A2DC4F2C40D94700A8731B /* AES.swift */; }; 18A2DCCA2C40D94800A8731B /* ASN1Scanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18A2DC512C40D94700A8731B /* ASN1Scanner.swift */; }; @@ -344,6 +345,7 @@ 18314AA02C3D37ED0028CE50 /* AudioTransform.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AudioTransform.m; sourceTree = ""; }; 184FFC532C21B091006F664D /* MSAigcModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MSAigcModel.swift; sourceTree = ""; }; 186BFD482C57915500673D8C /* MSVoiceChat.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MSVoiceChat.swift; sourceTree = ""; }; + 187C54632C6B7C4B0022C3D4 /* MSCompress.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MSCompress.swift; sourceTree = ""; }; 188695A12C59DA5700B9B89F /* MSVoiceChatModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MSVoiceChatModel.swift; sourceTree = ""; }; 18A2DC4F2C40D94700A8731B /* AES.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AES.swift; sourceTree = ""; }; 18A2DC512C40D94700A8731B /* ASN1Scanner.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ASN1Scanner.swift; sourceTree = ""; }; @@ -703,6 +705,7 @@ 186BFD482C57915500673D8C /* MSVoiceChat.swift */, 188695A12C59DA5700B9B89F /* MSVoiceChatModel.swift */, 181188442C1AC35F00C23FAB /* MSError.swift */, + 187C54632C6B7C4B0022C3D4 /* MSCompress.swift */, ); path = MixSdk; sourceTree = ""; @@ -1414,6 +1417,7 @@ 18A2DD1B2C40D94900A8731B /* CCM.swift in Sources */, 18A2DD2E2C40D94900A8731B /* PrimeTest.swift in Sources */, 18A2DCDF2C40D94800A8731B /* UInt16+Extension.swift in Sources */, + 187C54642C6B7C4B0022C3D4 /* MSCompress.swift in Sources */, 18A2DD162C40D94900A8731B /* BlockModeOptions.swift in Sources */, 181188572C1BE24200C23FAB /* MSStt.swift in Sources */, 18314A912C3D13A60028CE50 /* AudioConvert.m in Sources */, @@ -1678,6 +1682,10 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_MODULE_VERIFIER = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)", + ); GENERATE_INFOPLIST_FILE = YES; HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/MixSdk/FFmpeg-iOS/include"; INFOPLIST_KEY_NSHumanReadableCopyright = ""; @@ -1702,6 +1710,7 @@ SKIP_INSTALL = YES; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_OBJC_BRIDGING_HEADER = "MixSdk/MixSdk-Bridging-Header.h"; + SWIFT_OBJC_INTEROP_MODE = objc; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; @@ -1721,6 +1730,10 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_MODULE_VERIFIER = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)", + ); GENERATE_INFOPLIST_FILE = YES; HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/MixSdk/FFmpeg-iOS/include"; INFOPLIST_KEY_NSHumanReadableCopyright = ""; @@ -1745,6 +1758,7 @@ SKIP_INSTALL = YES; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_OBJC_BRIDGING_HEADER = "MixSdk/MixSdk-Bridging-Header.h"; + SWIFT_OBJC_INTEROP_MODE = objc; SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; }; diff --git a/MixSdk/MixSdk/MixSdk/MSCompress.swift b/MixSdk/MixSdk/MixSdk/MSCompress.swift new file mode 100644 index 0000000..e868e10 --- /dev/null +++ b/MixSdk/MixSdk/MixSdk/MSCompress.swift @@ -0,0 +1,140 @@ +//// +//// MSCompress.swift +//// Example +//// +//// Created by incar on 2024/8/13. +//// +// +//import UIKit +//import SCompressLib +// +///// 压缩回调 +//public typealias MSCompressCallBack = (_ retData: [UInt8]) -> Void +///// 解压回调 +//public typealias MSDeCompressCallBack = (_ image: UIImage?) -> Void +// +//public class MSCompress{ +// fileprivate static var compressCallBack:MSCompressCallBack? +// fileprivate static var decompressCallBack:MSDeCompressCallBack? +// +// public static func compress(image:UIImage,finished: @escaping MSCompressCallBack){ +// compressCallBack = finished +// +// print("start = ",Date().timeIntervalSince1970) +// let width = Int(image.size.width) +// let height = Int(image.size.height) +// print("width = \(width), height = \(height)") +// let pixelFormat = image.cgImage?.pixelFormatInfo +// print("pixelFormat = \(pixelFormat.debugDescription)") +// var sParam = SCompressParam() +// sParam.id = 15 +// sParam.width = Int32(width) +// sParam.height = Int32(height) +// sParam.stride = Int32(width) +// sParam.modeRgb = 1 +// sParam.modeAlpha = 1 +// sParam.cmpMode = 0 +// sParam.tileWidth = 4 +// sParam.pixelFormat = 1 +// +// let provider = image.cgImage!.dataProvider +// let providerData = provider!.data +// let data = CFDataGetBytePtr(providerData) +// +// for hei in 0...(height - 1) { +// for wid in 0...(width - 1) { +// let color = image[data!,providerData!,wid, hei] +// sParam.redChannel.append(color.r) +// sParam.greenChannel.append(color.g) +// sParam.blueChannel.append(color.b) +// sParam.alphaChannel.append(color.a) +// } +// } +// print("red channel len = \(sParam.redChannel.count)") +// let picApi = SPicZipApi() +// SetZipEvent(picEvent: MyZipRets()) +// picApi.Compress(compressParam: sParam) +// print("end = ",Date().timeIntervalSince1970) +// } +// +// public static func deCompress(data:Data,finished: @escaping MSDeCompressCallBack){ +// decompressCallBack = finished +// print("start = ",Date().timeIntervalSince1970) +// let picApi = SPicZipApi() +// var compressedFile : [UInt8] = [] +// for i in 0...data.count - 1 { +// compressedFile.append(data[i]) +// } +// picApi.Decompress(id: 39, fileBuffer: compressedFile) +// print("end = ",Date().timeIntervalSince1970) +// } +// +//} +// +//fileprivate func drawRect(decomRets: SCompressLib.SDecompressRets) ->CGImage?{ +// let width = decomRets.width +// let height = decomRets.height +// let boundingBox = CGRectMake(0, 0, CGFloat(width), CGFloat(height)) +// let context = createBitmapContext(pixelsWide: Int(width), Int(height)) +// let data = context!.data +// var pixelIdx = 0 +// var chanIdx = 0 +// for i in 0...height - 1 { +// for j in 0...width - 1 { +// chanIdx = Int(i * width + j) +// data?.storeBytes(of:decomRets.alphaChannel[chanIdx], toByteOffset: pixelIdx, as: UInt8.self) +// pixelIdx += 1 +// data?.storeBytes(of:decomRets.redChannel[chanIdx], toByteOffset: pixelIdx, as: UInt8.self) +// pixelIdx += 1 +// data?.storeBytes(of:decomRets.greenChannel[chanIdx], toByteOffset: pixelIdx, as: UInt8.self) +// pixelIdx += 1 +// data?.storeBytes(of:decomRets.blueChannel[chanIdx], toByteOffset: pixelIdx, as: UInt8.self) +// pixelIdx += 1 +// } +// } +// let decompressPic = context!.makeImage() +// return decompressPic +//} +// +//fileprivate func createBitmapContext(pixelsWide: Int, _ pixelsHigh: Int) -> CGContext? { +// let bytesPerPixel = 4 // 生成包括ARGB四个通道的像素点,每个像素点需要4个字节 +// let bytesPerRow = bytesPerPixel * pixelsWide +// let bitsPerComponent = 8 +// let byteCount = (bytesPerRow * pixelsHigh) +// let colorSpace = CGColorSpaceCreateDeviceRGB() +// let pixels = UnsafeMutablePointer.allocate(capacity:byteCount) +// let bitmapInfo = CGImageAlphaInfo.premultipliedFirst.rawValue | CGBitmapInfo.byteOrder32Big.rawValue +// let context = CGContext(data: pixels, width: pixelsWide, height: pixelsHigh, bitsPerComponent: bitsPerComponent, bytesPerRow: bytesPerRow, space: colorSpace, bitmapInfo: bitmapInfo) +// return context +//} +// +//fileprivate struct MyZipRets : PicZipEvent { +// func DecompressRets(id: Int, state: Int, decomRets: SCompressLib.SDecompressRets) { +// let imageWidth = Int(decomRets.width) +// let imageHeight = Int(decomRets.height) +// var cgImg = drawRect(decomRets: decomRets) +// var img = (cgImg != nil) ? UIImage(cgImage: cgImg!):nil +// MSCompress.decompressCallBack?(img) +// print("decompress finish id ====== \(id)") +// } +// +// func CompressRets(id: Int, state: Int, tileWidth: Int, retData: [UInt8]) { +// MSCompress.compressCallBack?(retData) +// } +//} +// +// +//fileprivate extension UIImage { +// subscript (data:UnsafePointer,providerData:CFData,x: Int, y: Int) -> (r : UInt8, g : UInt8, b : UInt8, a : UInt8) { +// if x < 0 || x > Int(size.width) || y < 0 || y > Int(size.height) { +// return (0, 0, 0, 0) +// } +// let numberOfComponents = 4 +// let pixelData = ((Int(size.width) * y) + x) * numberOfComponents +// let r = UInt8(data[pixelData]) +// let g = UInt8(data[pixelData + 1]) +// let b = UInt8(data[pixelData + 2]) +// let a = UInt8(data[pixelData + 3]) +// return (r, g, b, a) +// } +//} diff --git a/MixSdk/MixSdk/MixSdk/MixSdk.swift b/MixSdk/MixSdk/MixSdk/MixSdk.swift index c234438..653e191 100644 --- a/MixSdk/MixSdk/MixSdk/MixSdk.swift +++ b/MixSdk/MixSdk/MixSdk/MixSdk.swift @@ -158,7 +158,7 @@ public class MixSdk:NSObject { public var logs: [String] { Logger.logs } /// SDK 版本号 - public let version: String = "1.0.13" + public let version: String = "1.0.14" /// 默认为 false public var isDebug: Bool = false { didSet { Logger.isDebug = isDebug } diff --git "a/document/MixSdk\346\216\245\345\217\243\346\226\207\346\241\243.md" "b/document/MixSdk\346\216\245\345\217\243\346\226\207\346\241\243.md" index 011e494..59d294d 100644 --- "a/document/MixSdk\346\216\245\345\217\243\346\226\207\346\241\243.md" +++ "b/document/MixSdk\346\216\245\345\217\243\346\226\207\346\241\243.md" @@ -2,12 +2,12 @@ ## 介绍 -- 当前版本:v1.0.12 +- 当前版本:v1.0.14 -- 更新内容20240802: - 1. chat切换模型如果还处在回复过程中,则先回一个end。 +- 更新内容20240815: + 1. chat新增通义千问、讯飞星火 - 1. chat增加重置当前对话接口。 + 1. 新增图片转换库 @@ -398,6 +398,12 @@ public class MixSdk : NSObject { /// Ai平台类型 public enum MSPlatform { + /// 通义千问 + case aliyun + + /// 讯飞星火 + case xunfei + /// 文心一言 case yiyan @@ -409,6 +415,8 @@ public enum MSPlatform { /// chatGPT case chatGPT + + public var title: String { get } } ``` @@ -724,3 +732,64 @@ public typealias MSTtsVoiceCallBack = (_ data: Data) -> Void public typealias MSAudioConvertCallBack = (_ data: Data) -> Void ``` + + +## 图片处理 + +### 引入frame + +1. 把 SCompressLib.framework 拖入项目中 + +2. 在 Build Settings 选项卡中,设置如下参数 + + ![image-20240814105116165](/Users/apple/Library/Application Support/typora-user-images/image-20240814105116165.png) + +3. 在使用的文件中`#import SCompressLib` + +### 使用方法 + +将demo里面的 MSCompress.swift加到项目 + +```swift + //图片转bin +@objc func compressAction(){ + let image = UIImage(imageLiteralResourceName: "51722943641_.pic.png") + MSCompress.compress(image: image) { retData in + //保存 + let basedFilePath = NSHomeDirectory() + "/Documents" + let fileManager = FileManager.default + let format = DateFormatter() + let now = Date() + format.dateFormat = "HHmmss" + let timeStamp = format.string(from: now) + let fullPath = basedFilePath + "/CompressRets_abalone" + timeStamp + ".bin" + print("fullPath = \(fullPath)") + self.binPath = fullPath + + let exist = fileManager.fileExists(atPath: fullPath) + if !exist { + let data = Data(bytes: retData, count: retData.count) + fileManager.createFile(atPath: fullPath, contents: data) + } + } + } + + //bin转图片 + @objc func deCompressAction(){ + if let fullPath = binPath{ + let fileURL = URL(fileURLWithPath: fullPath) + do { + let fileData = try Data(contentsOf: fileURL) + MSCompress.deCompress(data: fileData) { image in + self.imgView.image = image + } + } catch { + print("file read error.") + } + } + else{ + print("请先压缩") + } + } +``` +