peachsim 0.1.2198 → 0.1.2200

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/cli/commands/inspect/settling.ts +20 -20
  2. package/cli/outbound-endpoints.ts +12 -0
  3. package/dist-lib/agent-daemon-client.cjs +1 -1
  4. package/dist-lib/agent-events.cjs +1 -1
  5. package/dist-lib/attached-projects.cjs +1 -1
  6. package/dist-lib/auth/shared-session.cjs +1 -1
  7. package/dist-lib/backend-origin.cjs +1 -1
  8. package/dist-lib/beta.cjs +1 -1
  9. package/dist-lib/beta.mjs +1 -1
  10. package/dist-lib/bridge-constants.cjs +1 -1
  11. package/dist-lib/bridge-contract-input.cjs +1 -1
  12. package/dist-lib/bridge-contract-input.mjs +1 -1
  13. package/dist-lib/bridge-contract.cjs +1 -1
  14. package/dist-lib/bridge-contract.mjs +1 -1
  15. package/dist-lib/bundle-channel.cjs +1532 -1170
  16. package/dist-lib/capture-contract.cjs +1 -1
  17. package/dist-lib/capture-contract.mjs +1 -1
  18. package/dist-lib/cloud-contract.cjs +1 -1
  19. package/dist-lib/cloud-contract.mjs +1 -1
  20. package/dist-lib/cloud-test-args.cjs +1 -1
  21. package/dist-lib/cloud-test-args.mjs +1 -1
  22. package/dist-lib/cloud.cjs +1 -1
  23. package/dist-lib/cloud.mjs +1 -1
  24. package/dist-lib/config.cjs +1 -1
  25. package/dist-lib/config.mjs +1 -1
  26. package/dist-lib/detox/index.cjs +22 -22
  27. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  28. package/dist-lib/expo-swift-bundle.cjs +45875 -39899
  29. package/dist-lib/expo-swift-metadata.cjs +1 -1
  30. package/dist-lib/expo-swift-metadata.mjs +1 -1
  31. package/dist-lib/home-paths.cjs +1 -1
  32. package/dist-lib/host/bridge-host.cjs +50942 -49780
  33. package/dist-lib/host/fetch-proxy-handler.cjs +16 -4
  34. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  35. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  36. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  37. package/dist-lib/host/websocket-proxy.cjs +1 -1
  38. package/dist-lib/index.cjs +36 -24
  39. package/dist-lib/jump-to-source-babel.cjs +1 -1
  40. package/dist-lib/jump-to-source-native.cjs +1 -1
  41. package/dist-lib/kotlin-host.cjs +100 -10
  42. package/dist-lib/menu.cjs +1 -1
  43. package/dist-lib/menu.mjs +1 -1
  44. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  45. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  46. package/dist-lib/metro-production-bundle.cjs +1 -1
  47. package/dist-lib/metro-production-bundle.mjs +1 -1
  48. package/dist-lib/metro.cjs +16 -4
  49. package/dist-lib/native-app-identity-project.cjs +14 -2
  50. package/dist-lib/native-app-identity-project.mjs +14 -2
  51. package/dist-lib/native-app-identity.cjs +1 -1
  52. package/dist-lib/native-app-identity.mjs +1 -1
  53. package/dist-lib/native-firebase-metadata.cjs +1 -1
  54. package/dist-lib/native-firebase-metadata.mjs +1 -1
  55. package/dist-lib/pdfium-raster.cjs +1 -1
  56. package/dist-lib/pdfium-raster.mjs +1 -1
  57. package/dist-lib/plist.cjs +1 -1
  58. package/dist-lib/plist.mjs +1 -1
  59. package/dist-lib/profiles.cjs +1 -1
  60. package/dist-lib/public-brand.cjs +1 -1
  61. package/dist-lib/public-origins-lib-esm.json +24 -24
  62. package/dist-lib/public-origins-lib.json +302 -289
  63. package/dist-lib/react-native-host-modules.cjs +1 -1
  64. package/dist-lib/react-native-host-modules.mjs +1 -1
  65. package/dist-lib/reap-browser.cjs +1 -1
  66. package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
  67. package/dist-lib/sdk.cjs +21 -21
  68. package/dist-lib/sdk.mjs +21 -21
  69. package/dist-lib/skills.cjs +3622 -2962
  70. package/dist-lib/swift-compile.cjs +34 -3
  71. package/dist-lib/swift-compile.mjs +34 -3
  72. package/dist-lib/swift-package.cjs +1 -1
  73. package/dist-lib/swift-package.mjs +1 -1
  74. package/dist-lib/swift-submit.cjs +1 -1
  75. package/dist-lib/swift-submit.mjs +1 -1
  76. package/dist-lib/swift-toolchain.cjs +1 -1
  77. package/dist-lib/swift.cjs +1 -1
  78. package/dist-lib/vite-swift.cjs +129 -43
  79. package/dist-lib/vite.cjs +16 -4
  80. package/dist-lib/worklet-executable.cjs +1 -1
  81. package/dist-lib/worklet-executable.mjs +1 -1
  82. package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +2 -0
  83. package/dist-types/packages/peach-engine/src/render-worker/app-prefetch-contract.d.ts +5 -0
  84. package/dist-types/packages/peach-engine/src/render-worker/protocol.d.ts +2 -0
  85. package/dist-types/packages/peach-engine/src/render-worker/tree-sync-port.d.ts +5 -0
  86. package/kotlin/sdk.tar.gz +0 -0
  87. package/package.json +1 -1
  88. package/runtime-companion.json +1 -1
  89. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h +2 -0
  90. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h +1 -1
  91. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSByteCountFormatter.h +1 -1
  92. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h +1 -1
  93. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSCompoundPredicate.h +1 -1
  94. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSDateIntervalFormatter.h +1 -1
  95. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSDecimalNumber.h +1 -1
  96. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSEnergyFormatter.h +1 -1
  97. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSExpression.h +1 -1
  98. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSFileHandle.h +2 -2
  99. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSISO8601DateFormatter.h +1 -1
  100. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSIndexSet.h +1 -1
  101. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSLengthFormatter.h +1 -1
  102. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSLock.h +3 -3
  103. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSMassFormatter.h +1 -1
  104. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSMeasurementFormatter.h +1 -1
  105. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSNotification.h +1 -1
  106. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSNotificationQueue.h +1 -1
  107. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h +4 -0
  108. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSOrthography.h +1 -1
  109. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSScanner.h +1 -1
  110. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSThread.h +1 -1
  111. package/sdk/ios/System/Library/Frameworks/Foundation.framework/Headers/NSUnit.h +25 -25
  112. package/sdk/ios/System/Library/Frameworks/QuartzCore.framework/Headers/CAValueFunction.h +1 -1
  113. package/sdk/ios/System/Library/Frameworks/QuartzCore.framework/Headers/CoreAnimation.h +1 -0
  114. package/sdk/ios/System/Library/Frameworks/QuartzCore.framework/Modules/module.modulemap +1 -0
  115. package/sdk/ios/System/Library/Frameworks/UIKitText.framework/Headers/UIKitText.apinotes +14 -0
  116. package/src/android-layout-ids.ts +50 -0
  117. package/src/android-view-classes.ts +41 -0
  118. package/src/expo-native-workspace.ts +2 -3
  119. package/src/expo-swift-host.ts +6 -1
  120. package/src/java-module-abi.ts +2 -0
  121. package/src/javaAbiContract.ts +2 -0
  122. package/src/kotlin-app.ts +33 -7
  123. package/src/kotlin-host.ts +83 -6
  124. package/src/kotlin-maven-sources.ts +248 -0
  125. package/src/native-prebuilt.ts +36 -2
  126. package/src/native-swift-slices.ts +43 -2
  127. package/src/react-native-bridge-modules.ts +7 -1
  128. package/src/react-native-core-build.ts +176 -0
  129. package/src/react-native-core-digest.ts +1 -1
  130. package/src/react-native-core.ts +24 -7
  131. package/src/swift-packages.ts +3 -0
  132. package/src/swift-standin-emit.ts +9 -1
  133. package/src/swift-standins.ts +5 -2
  134. package/src/swift-wasm-prune.ts +41 -3
  135. package/src/turbo-compile.ts +2 -1
package/dist-lib/vite.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2198 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2200 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
  let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -1416,7 +1416,7 @@ function isValidRuntimeVersion(value) {
1416
1416
  }
1417
1417
 
1418
1418
  // runtime-companion.json
1419
- var runtime_companion_default = { abi: 1, sha256: "38d58f4713cbf87e8d4cde206f6a1fb9bf3898b6b885f45db610ad1fccde083a", file: "node/cli-38d58f4713cbf87e8d4cde206f6a1fb9bf3898b6b885f45db610ad1fccde083a.cjs" };
1419
+ var runtime_companion_default = { abi: 1, sha256: "5aec79ac0fcea933862e7e373e0d167401e0d891c835d195b7f48039c87add60", file: "node/cli-5aec79ac0fcea933862e7e373e0d167401e0d891c835d195b7f48039c87add60.cjs" };
1420
1420
 
1421
1421
  // src/answeredNativePackages.ts
1422
1422
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
@@ -1909,7 +1909,7 @@ function readIosSdkTree(root) {
1909
1909
 
1910
1910
  // src/swift-standin-digest.ts
1911
1911
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
1912
- var STANDIN_SOURCE_DIGEST = true ? "afff2f6ba145885813b507114e72f9218f9a815a257ab2e44f7da376b7bf5cd1" : standinSourceDigest();
1912
+ var STANDIN_SOURCE_DIGEST = true ? "f645af113ec0277d6f260442290621337b4c73e3c3429a24104d2ef41e42c414" : standinSourceDigest();
1913
1913
 
1914
1914
  // src/expo-native-workspace.ts
1915
1915
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
@@ -5193,6 +5193,18 @@ var OMIT_SDK_LIB_FLAGS = /* @__PURE__ */ new Set([
5193
5193
  "-lswiftCore",
5194
5194
  "-lswift_Concurrency"
5195
5195
  ]);
5196
+ var SWIFTUI_WRAPPER_HOST_PROTOCOLS = new Set(
5197
+ [
5198
+ "View",
5199
+ "ViewModifier",
5200
+ "App",
5201
+ "Scene",
5202
+ "Gesture",
5203
+ "ToolbarContent",
5204
+ "Commands",
5205
+ "DynamicProperty"
5206
+ ].map((name) => `$s7SwiftUI${name.length}${name}Mp`)
5207
+ );
5196
5208
 
5197
5209
  // src/swift-guest-link.ts
5198
5210
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
@@ -5391,7 +5403,7 @@ var FOUNDATION_IMPLICIT_MODULES = [
5391
5403
  var FOUNDATION_IMPLICIT_FLAGS = FOUNDATION_IMPLICIT_MODULES.map(
5392
5404
  (module2) => `, "-Xfrontend", "-import-module", "-Xfrontend", "${module2}"`
5393
5405
  ).join("");
5394
- var compilerSourceDigest = true ? "45099ee041f3233f5f998f83729594ab81a38eac8fcf30e21c05ba133c5cb780" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
5406
+ var compilerSourceDigest = true ? "8004dbc307143f91fede23d329c01a8171056ea767fd3755b8ac7a39d59e25b3" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
5395
5407
  var CORE_FOUNDATION_HANDLE_IMPORTS = [
5396
5408
  "CFAllocator",
5397
5409
  "CFArray",
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2198 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2200 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
  let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2198 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2200 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/worklet-executable.ts
4
4
  import { parse } from "acorn";
@@ -136,6 +136,7 @@ export interface SceneNativeBinding {
136
136
  _peach_walk_retained_census(): number;
137
137
  _peach_classic_layout_set(slot: number, start: number, duration: number, easing: number, fromX: number, fromY: number, fromWidth: number, fromHeight: number, targetX: number, targetY: number, targetWidth: number, targetHeight: number): void;
138
138
  _peach_classic_layout_clear(slot: number): void;
139
+ _peach_classic_layout_progress(progress: number): void;
139
140
  _peach_classic_layout_sample(slot: number, timestamp: number): number;
140
141
  peachExtentParameters?: (slot: number) => void;
141
142
  _peach_scene_set_buffers(integers: number, doubles: number, floats: number, layoutMatrices: number): void;
@@ -350,6 +351,7 @@ export declare class SceneTable {
350
351
  stampPaintKind(slot: number, kind: number, bits: number): void;
351
352
  readLayout(slot: number, layout: SootSimLayout): void;
352
353
  writeClassicLayoutAnimation(slot: number, from: SootSimLayout, target: SootSimLayout, start: number, duration: number, type: string | null): void;
354
+ setClassicLayoutPresentationProgress(progress: number): void;
353
355
  clearClassicLayoutAnimation(slot: number): void;
354
356
  sampleClassicLayoutAnimation(slot: number, timestamp: number, out: SootSimLayout): boolean;
355
357
  commitNativeLayouts(native: NativeLayoutExports): void;
@@ -0,0 +1,5 @@
1
+ export declare const APP_PREFETCH_MANIFEST_FILE = "app-prefetch.json";
2
+ export declare const APP_PREFETCH_PROD_MANIFEST_FILE = "app-prefetch.prod.json";
3
+ export declare const APP_PREFETCH_MANIFEST_FROM_CHUNK = "../app-prefetch.json";
4
+ export declare const APP_PREFETCH_PROD_MANIFEST_FROM_CHUNK = "../app-prefetch.prod.json";
5
+ export type BackgroundWarm = 'none' | 'light' | 'eager';
@@ -12,6 +12,7 @@ import type { RemoteEngineClientConfig } from '../remote-stream/client-config.d.
12
12
  import type { DuoFoldWireState } from '../settings/duo-fold-bus.d.ts';
13
13
  import type { ReactNativeConfigurationMutation, ReactNativeConfigurationSnapshot } from '../settings/react-native-configuration.d.ts';
14
14
  import type { ShellIntentEventName } from '../shell-intent.d.ts';
15
+ import type { BackgroundWarm } from './app-prefetch-contract.d.ts';
15
16
  import type { CompositorBackend } from './compositor-backend.d.ts';
16
17
  import type { EditMenuItemRect } from './edit-menu-geometry.d.ts';
17
18
  import type { GestureSeamEvent } from './gesture-seam-protocol.d.ts';
@@ -165,6 +166,7 @@ export type HostToWorker = {
165
166
  prefersReducedMotion?: boolean;
166
167
  netInfo?: NetInfoSnapshot;
167
168
  hostSpeechRecognitionAvailable?: boolean;
169
+ backgroundWarm?: BackgroundWarm;
168
170
  verboseWorkerLogs?: boolean;
169
171
  workletSAB?: SharedArrayBuffer;
170
172
  synchronizableArenas?: SynchronizableArenas;
@@ -38,6 +38,11 @@ export type TreeSyncPortMessage = {
38
38
  } | {
39
39
  type: 'requestSurfaceResync';
40
40
  surfaceId: string;
41
+ } | {
42
+ type: 'treeInbox';
43
+ buffer: SharedArrayBuffer;
44
+ } | {
45
+ type: 'treeInboxAccepted';
41
46
  } | {
42
47
  type: 'nativeAnimMirror';
43
48
  envelope: NativeAnimMirrorEnvelope;
package/kotlin/sdk.tar.gz CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "peachsim",
3
- "version": "0.1.2198",
3
+ "version": "0.1.2200",
4
4
  "description": "Vite and Metro plugins, testing drivers, and SDK exports for peach.",
5
5
  "author": "Tamagui LLC",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -1 +1 @@
1
- {"abi":1,"sha256":"38d58f4713cbf87e8d4cde206f6a1fb9bf3898b6b885f45db610ad1fccde083a","file":"node/cli-38d58f4713cbf87e8d4cde206f6a1fb9bf3898b6b885f45db610ad1fccde083a.cjs"}
1
+ {"abi":1,"sha256":"5aec79ac0fcea933862e7e373e0d167401e0d891c835d195b7f48039c87add60","file":"node/cli-5aec79ac0fcea933862e7e373e0d167401e0d891c835d195b7f48039c87add60.cjs"}
@@ -1,5 +1,7 @@
1
1
  #include <limits.h>
2
+ #ifndef PEACH_SWIFT_CLASS
2
3
  #define PEACH_SWIFT_CLASS(module) __attribute__((external_source_symbol(language="Swift", defined_in=#module, generated_declaration)))
4
+ #endif
3
5
  #ifdef __OBJC__
4
6
  @class NSArray, NSAttributedString, NSString, NSNull, NSCharacterSet, NSData, NSDate, NSTimeZone, NSDictionary, NSError, NSLocale, NSNumber, NSSet, NSURL;
5
7
  #endif
@@ -98,7 +98,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
98
98
  ///
99
99
  /// For information about the bundle structure of iOS and macOS apps, see [Bundle Programming Guide](https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/Introduction/Introduction.html#//apple_ref/doc/uid/10000123i). For information about the structure of framework bundles, see [Framework Programming Guide](https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Frameworks.html#//apple_ref/doc/uid/10000183i). For information about the structure of macOS plug-ins, see [Code Loading Programming Topics](https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/LoadingCode/LoadingCode.html#//apple_ref/doc/uid/10000052i).
100
100
  NS_SWIFT_SENDABLE
101
- @interface NSBundle : NSObject
101
+ PEACH_SWIFT_CLASS(Foundation) @interface NSBundle : NSObject
102
102
 
103
103
  /* Methods for creating or retrieving bundle instances. */
104
104
 
@@ -51,7 +51,7 @@ typedef NS_ENUM(NSInteger, NSByteCountFormatterCountStyle) {
51
51
  /// > Tip:
52
52
  /// > In Swift, you can use ``ByteCountFormatStyle`` or ``Measurement/FormatStyle/ByteCount`` rather than ``ByteCountFormatter``. The ``FormatStyle`` API offers a declarative idiom for customizing the formatting of various types. Also, Foundation caches identical ``FormatStyle`` instances, so you don't need to pass them around your app, or risk wasting memory with duplicate formatters.
53
53
  API_AVAILABLE(macos(10.8), ios(6.0), watchos(2.0), tvos(9.0))
54
- @interface NSByteCountFormatter : NSFormatter
54
+ PEACH_SWIFT_CLASS(Foundation) @interface NSByteCountFormatter : NSFormatter
55
55
 
56
56
  /// Converts a byte count into the specified string format without creating an `NSNumber` object.
57
57
  ///
@@ -226,7 +226,7 @@ enum {
226
226
  ///
227
227
  /// > Important:
228
228
  /// > The Swift overlay to the Foundation framework provides the ``CharacterSet`` structure, which bridges to the ``NSMutableCharacterSet`` class and its immutable superclass, ``NSCharacterSet``. For more information about value types, see <doc://com.apple.documentation/documentation/swift/working-with-foundation-types>.
229
- @interface NSMutableCharacterSet : NSCharacterSet <NSCopying, NSMutableCopying, NSSecureCoding>
229
+ PEACH_SWIFT_CLASS(Foundation) @interface NSMutableCharacterSet : NSCharacterSet <NSCopying, NSMutableCopying, NSSecureCoding>
230
230
 
231
231
  /// Adds to the receiver the characters whose Unicode values are in a given range.
232
232
  ///
@@ -28,7 +28,7 @@ typedef NS_ENUM(NSUInteger, NSCompoundPredicateType) {
28
28
  /// - An `OR` predicate with no subpredicates evaluates to <doc://com.apple.documentation/documentation/swift/false>.
29
29
  /// - A compound predicate with one or more subpredicates evaluates to the truth of its subpredicates.
30
30
  API_AVAILABLE(macos(10.4), ios(3.0), watchos(2.0), tvos(9.0))
31
- @interface NSCompoundPredicate : NSPredicate
31
+ PEACH_SWIFT_CLASS(Foundation) @interface NSCompoundPredicate : NSPredicate
32
32
 
33
33
  /// Returns the receiver that a specified type initializes using predicates from a specified array.
34
34
  ///
@@ -74,7 +74,7 @@ typedef NS_ENUM(NSUInteger, NSDateIntervalFormatterStyle) {
74
74
  /// > In Swift, you can use ``Date/IntervalFormatStyle`` rather than ``DateIntervalFormatter``. The ``FormatStyle`` API offers a declarative idiom for customizing the formatting of various types. Also, Foundation caches identical ``FormatStyle`` instances, so you don't need to pass them around your app, or risk wasting memory with duplicate formatters.
75
75
  NS_SWIFT_SENDABLE
76
76
  API_AVAILABLE(macos(10.10), ios(8.0), watchos(2.0), tvos(9.0))
77
- @interface NSDateIntervalFormatter : NSFormatter
77
+ PEACH_SWIFT_CLASS(Foundation) @interface NSDateIntervalFormatter : NSFormatter
78
78
 
79
79
  /// The locale for the formatter. Default is `[NSLocale currentLocale]`.
80
80
  @property (null_resettable, copy) NSLocale *locale;
@@ -254,7 +254,7 @@ NS_SWIFT_SENDABLE
254
254
  ///
255
255
  /// For more information, see the ``NSDecimalNumberBehaviors`` protocol specification.
256
256
  NS_SWIFT_SENDABLE
257
- @interface NSDecimalNumberHandler : NSObject <NSDecimalNumberBehaviors, NSCoding> {
257
+ PEACH_SWIFT_CLASS(Foundation) @interface NSDecimalNumberHandler : NSObject <NSDecimalNumberBehaviors, NSCoding> {
258
258
  @private
259
259
  signed int _scale:16;
260
260
  unsigned _roundingMode:3;
@@ -23,7 +23,7 @@ typedef NS_ENUM(NSInteger, NSEnergyFormatterUnit) {
23
23
  /// > Note:
24
24
  /// > As of iOS 10, macOS 10.12, tvOS 10, and watchOS 3, Foundation provides the ``MeasurementFormatter`` class, which can be used to represent quantities of ``UnitEnergy`` to provide equivalent functionality to ``EnergyFormatter``. You are encouraged to transition to these new Foundation Units and Measurements APIs whenever possible.
25
25
  API_AVAILABLE(macos(10.10), ios(8.0), watchos(2.0), tvos(9.0))
26
- @interface NSEnergyFormatter : NSFormatter
26
+ PEACH_SWIFT_CLASS(Foundation) @interface NSEnergyFormatter : NSFormatter
27
27
 
28
28
  /// The number formatter used to format the numbers in an energy string.
29
29
  ///
@@ -90,7 +90,7 @@ typedef NS_ENUM(NSUInteger, NSExpressionType) {
90
90
  ///
91
91
  /// Although Core Data supports evaluation of the predefined functions, it doesn't support the evaluation of custom predicate functions in the persistent stores (during a fetch).
92
92
  API_AVAILABLE(macos(10.4), ios(3.0), watchos(2.0), tvos(9.0))
93
- @interface NSExpression : NSObject <NSSecureCoding, NSCopying> {
93
+ PEACH_SWIFT_CLASS(Foundation) @interface NSExpression : NSObject <NSSecureCoding, NSCopying> {
94
94
  @package
95
95
  struct _expressionFlags {
96
96
  unsigned int _evaluationBlocked:1;
@@ -23,7 +23,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
23
23
  ///
24
24
  /// When using a file handle object to communicate asynchronously with a socket, you must initiate the corresponding operations from a thread with an active run loop. Although the read, accept, and wait operations themselves are performed asynchronously on background threads, the file handle uses a run loop source to monitor the operations and notify your code appropriately. Therefore, you must call those methods from your application's main thread or from any thread where you've configured a run loop and are using it to process events.
25
25
  NS_SWIFT_SENDABLE
26
- @interface NSFileHandle : NSObject <NSSecureCoding>
26
+ PEACH_SWIFT_CLASS(Foundation) @interface NSFileHandle : NSObject <NSSecureCoding>
27
27
 
28
28
  /// The data currently available in the receiver.
29
29
  ///
@@ -440,7 +440,7 @@ FOUNDATION_EXPORT NSString * const NSFileHandleNotificationMonitorModes API_DEPR
440
440
  ///
441
441
  /// ``Pipe`` objects provide an object-oriented interface for accessing pipes. An ``Pipe`` object represents both ends of a pipe and enables communication through the pipe. A pipe is a one-way communications channel between related processes; one process writes data, while the other process reads that data. The data that passes through the pipe is buffered; the size of the buffer is determined by the underlying operating system. ``Pipe`` is an abstract class, the public interface of a class cluster.
442
442
  NS_SWIFT_SENDABLE
443
- @interface NSPipe : NSObject
443
+ PEACH_SWIFT_CLASS(Foundation) @interface NSPipe : NSObject
444
444
 
445
445
  /// The receiver's read file handle.
446
446
  @property (readonly, retain) NSFileHandle *fileHandleForReading;
@@ -77,7 +77,7 @@ typedef NS_OPTIONS(NSUInteger, NSISO8601DateFormatOptions) {
77
77
  /// > Tip:
78
78
  /// > In Swift, you can use ``Date/ISO8601FormatStyle`` rather than ``ISO8601DateFormatter``. The ``FormatStyle`` API offers a declarative idiom for customizing the formatting of various types. Also, Foundation caches identical ``FormatStyle`` instances, so you don't need to pass them around your app, or risk wasting memory with duplicate formatters.
79
79
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
80
- @interface NSISO8601DateFormatter : NSFormatter <NSSecureCoding> {
80
+ PEACH_SWIFT_CLASS(Foundation) @interface NSISO8601DateFormatter : NSFormatter <NSSecureCoding> {
81
81
  @private
82
82
  CFDateFormatterRef _formatter;
83
83
  NSTimeZone *_timeZone;
@@ -250,7 +250,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
250
250
  ///
251
251
  /// > Important:
252
252
  /// > The Swift overlay to the Foundation framework provides the ``IndexSet`` structure, which bridges to the ``NSMutableIndexSet`` class and its immutable superclass, ``NSIndexSet``. For more information about value types, see <doc://com.apple.documentation/documentation/swift/working-with-foundation-types>.
253
- @interface NSMutableIndexSet : NSIndexSet
253
+ PEACH_SWIFT_CLASS(Foundation) @interface NSMutableIndexSet : NSIndexSet
254
254
 
255
255
  /// Adds the indexes in an index set to the receiver.
256
256
  /// - Parameter indexSet: Index set to add.
@@ -31,7 +31,7 @@ typedef NS_ENUM(NSInteger, NSLengthFormatterUnit) {
31
31
  /// > Note:
32
32
  /// > As of iOS 10, macOS 10.12, tvOS 10, and watchOS 3, Foundation provides the ``MeasurementFormatter`` class, which can be used to represent quantities of ``UnitLength`` to provide equivalent functionality to ``LengthFormatter``. You are encouraged to transition to these new Foundation Units and Measurements APIs whenever possible.
33
33
  API_AVAILABLE(macos(10.10), ios(8.0), watchos(2.0), tvos(9.0))
34
- @interface NSLengthFormatter : NSFormatter
34
+ PEACH_SWIFT_CLASS(Foundation) @interface NSLengthFormatter : NSFormatter
35
35
 
36
36
  /// The number formatter used to format the numbers in a length string.
37
37
  ///
@@ -21,7 +21,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
21
21
 
22
22
  /// An object that coordinates the operation of multiple threads of execution within the same application.
23
23
  NS_SWIFT_SENDABLE
24
- @interface NSLock : NSObject <NSLocking>
24
+ PEACH_SWIFT_CLASS(Foundation) @interface NSLock : NSObject <NSLocking>
25
25
 
26
26
  #if !0
27
27
  /// Attempts to acquire a lock and immediately returns a Boolean value that indicates whether the attempt was successful.
@@ -72,7 +72,7 @@ NS_SWIFT_SENDABLE
72
72
 
73
73
  /// A lock that may be acquired multiple times by the same thread without causing a deadlock.
74
74
  NS_SWIFT_SENDABLE
75
- @interface NSRecursiveLock : NSObject <NSLocking>
75
+ PEACH_SWIFT_CLASS(Foundation) @interface NSRecursiveLock : NSObject <NSLocking>
76
76
 
77
77
  /// Attempts to acquire a lock and immediately returns a Boolean value that indicates whether the attempt was successful.
78
78
  - (BOOL)tryLock NS_SWIFT_UNAVAILABLE_FROM_ASYNC("Use async-safe scoped locking instead");
@@ -89,7 +89,7 @@ NS_SWIFT_SENDABLE
89
89
  /// A condition variable whose semantics follow those used for POSIX-style conditions.
90
90
  NS_SWIFT_SENDABLE
91
91
  API_AVAILABLE(macos(10.5), ios(2.0), watchos(2.0), tvos(9.0))
92
- @interface NSCondition : NSObject <NSLocking>
92
+ PEACH_SWIFT_CLASS(Foundation) @interface NSCondition : NSObject <NSLocking>
93
93
 
94
94
  /// Blocks the current thread until the condition is signaled.
95
95
  - (void)wait NS_SWIFT_UNAVAILABLE_FROM_ASYNC("Use async-safe scoped locking instead");
@@ -27,7 +27,7 @@ typedef NS_ENUM(NSInteger, NSMassFormatterUnit) {
27
27
  /// > Note:
28
28
  /// > As of iOS 10, macOS 10.12, tvOS 10, and watchOS 3, Foundation provides the ``MeasurementFormatter`` class, which can be used to represent quantities of ``UnitMass`` to provide equivalent functionality to ``MassFormatter``. You are encouraged to transition to these new Foundation Units and Measurements APIs whenever possible.
29
29
  API_AVAILABLE(macos(10.10), ios(8.0), watchos(2.0), tvos(9.0))
30
- @interface NSMassFormatter : NSFormatter
30
+ PEACH_SWIFT_CLASS(Foundation) @interface NSMassFormatter : NSFormatter
31
31
 
32
32
  /// The number formatter used to format the numbers in a mass string.
33
33
  ///
@@ -29,7 +29,7 @@ typedef NS_OPTIONS(NSUInteger, NSMeasurementFormatterUnitOptions) {
29
29
  /// > Tip:
30
30
  /// > In Swift, you can use ``Measurement/FormatStyle`` rather than ``MeasurementFormatter``. The ``FormatStyle`` API offers a declarative idiom for customizing the formatting of various types. Also, Foundation caches identical ``FormatStyle`` instances, so you don't need to pass them around your app, or risk wasting memory with duplicate formatters.
31
31
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
32
- @interface NSMeasurementFormatter : NSFormatter <NSSecureCoding> {
32
+ PEACH_SWIFT_CLASS(Foundation) @interface NSMeasurementFormatter : NSFormatter <NSSecureCoding> {
33
33
  @private
34
34
  void *_formatter;
35
35
  }
@@ -106,7 +106,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
106
106
  ///
107
107
  /// A notification center can deliver notifications only within a single program. On macOS, if you want to post a notification to other processes or receive notifications from other processes, use ``DistributedNotificationCenter`` instead.
108
108
  NS_SWIFT_SENDABLE
109
- @interface NSNotificationCenter : NSObject
109
+ PEACH_SWIFT_CLASS(Foundation) @interface NSNotificationCenter : NSObject
110
110
 
111
111
  /// The app's default notification center.
112
112
  @property (class, readonly, strong) NSNotificationCenter *defaultCenter;
@@ -40,7 +40,7 @@ typedef NS_OPTIONS(NSUInteger, NSNotificationCoalescing) {
40
40
  /// A notification queue maintains notifications in first in, first out (FIFO) order. When a notification moves to the front of the queue, the queue posts it to the notification center, which in turn dispatches the notification to all objects registered as observers.
41
41
  ///
42
42
  /// Every thread has a default notification queue, which is associated with the default notification center for the process. You can create your own notification queues and have multiple queues per center and thread.
43
- @interface NSNotificationQueue : NSObject
43
+ PEACH_SWIFT_CLASS(Foundation) @interface NSNotificationQueue : NSObject
44
44
 
45
45
  /// Returns the default notification queue for the current thread.
46
46
  ///
@@ -5,6 +5,10 @@
5
5
  #include <TargetConditionals.h>
6
6
  #include <Availability.h>
7
7
 
8
+ #ifndef PEACH_SWIFT_CLASS
9
+ #define PEACH_SWIFT_CLASS(module) __attribute__((external_source_symbol(language="Swift", defined_in=#module, generated_declaration)))
10
+ #endif
11
+
8
12
  #if TARGET_OS_OSX || TARGET_OS_IPHONE || 0
9
13
  #include <objc/NSObjCRuntime.h>
10
14
  #include <stdarg.h>
@@ -22,7 +22,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
22
22
  ///
23
23
  /// Subclasses must override the ``dominantScript`` and ``languageMap`` properties. These properties are set using ``init(dominantScript:languageMap:)`` or ``orthographyWithDominantScript:languageMap:`` in Objective-C.
24
24
  API_AVAILABLE(macos(10.6), ios(4.0), watchos(2.0), tvos(9.0))
25
- @interface NSOrthography : NSObject <NSCopying, NSSecureCoding>
25
+ PEACH_SWIFT_CLASS(Foundation) @interface NSOrthography : NSObject <NSCopying, NSSecureCoding>
26
26
 
27
27
  /// The dominant script for the text.
28
28
  ///
@@ -24,7 +24,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
24
24
  /// To set a ``Scanner`` object to ignore a set of characters as it scans the string, use the ``charactersToBeSkipped`` property. Characters in the skip set are skipped over before the target is scanned. The default set of characters to skip is the whitespace and newline character set.
25
25
  ///
26
26
  /// To retrieve the unscanned remainder of the string, use `scanner.string.substring(from: scanner.scanLocation)`.
27
- @interface NSScanner : NSObject <NSCopying>
27
+ PEACH_SWIFT_CLASS(Foundation) @interface NSScanner : NSObject <NSCopying>
28
28
 
29
29
  /// The string the scanner will scan.
30
30
  @property (readonly, copy) NSString *string;
@@ -19,7 +19,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
19
19
  /// ### Subclassing Notes
20
20
  ///
21
21
  /// You can subclass ``Thread`` and override the ``main()`` method to implement your thread's main entry point. If you override ``main()``, you do not need to invoke the inherited behavior by calling `super`.
22
- @interface NSThread : NSObject {
22
+ PEACH_SWIFT_CLASS(Foundation) @interface NSThread : NSObject {
23
23
  @private
24
24
  id _private;
25
25
  uint8_t _bytes[44];
@@ -29,7 +29,7 @@ NS_HEADER_AUDIT_BEGIN(nullability, sendability)
29
29
  ///
30
30
  /// As stated above, most physical units can be converted using a linear equation with ``UnitConverterLinear``. You should only create a custom subclass of ``NSUnitConverter`` for units that cannot be converted in this way.
31
31
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
32
- @interface NSUnitConverter : NSObject
32
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitConverter : NSObject
33
33
 
34
34
  /*
35
35
  The following methods perform conversions to and from the base unit of a unit class's dimension. Each unit is defined against the base unit for the dimension to which the unit belongs.
@@ -103,7 +103,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
103
103
  /// }
104
104
  /// }
105
105
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
106
- @interface NSUnitConverterLinear : NSUnitConverter <NSSecureCoding> {
106
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitConverterLinear : NSUnitConverter <NSSecureCoding> {
107
107
  @private
108
108
  double _coefficient;
109
109
  double _constant;
@@ -158,7 +158,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
158
158
  /// ``NSUnit`` is intended for subclassing. For dimensional units, you should use one of the Apple provided ``Dimension`` subclasses listed in Table 1 of ``Dimension``, or create a custom subclass of ``Dimension``. You can create a direct subclass of ``NSUnit`` to represent a custom dimensionless unit, such as a count, score, or ratio.
159
159
  NS_SWIFT_SENDABLE
160
160
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
161
- @interface NSUnit : NSObject <NSCopying, NSSecureCoding> {
161
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnit : NSObject <NSCopying, NSSecureCoding> {
162
162
  @private
163
163
  NSString *_symbol;
164
164
  }
@@ -340,7 +340,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
340
340
  /// As described in <doc:#Working-with-Custom-Units>, you need to create a custom subclass of ``Dimension`` only if you or the system haven't defined a unit of the desired dimension. You can define a custom unit for an existing ``Dimension`` subclass by either calling the ``init(symbol:converter:)`` method or extending the subclass and adding a corresponding class method.
341
341
  NS_SWIFT_SENDABLE
342
342
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
343
- @interface NSDimension : NSUnit <NSSecureCoding> {
343
+ PEACH_SWIFT_CLASS(Foundation) @interface NSDimension : NSUnit <NSSecureCoding> {
344
344
  @private
345
345
  NSUInteger _reserved;
346
346
  @protected
@@ -384,7 +384,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
384
384
  /// | Gravity | ``gravity`` | g | `9.81` |
385
385
  NS_SWIFT_SENDABLE
386
386
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
387
- @interface NSUnitAcceleration : NSDimension <NSSecureCoding>
387
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitAcceleration : NSDimension <NSSecureCoding>
388
388
  /*
389
389
  Base unit - metersPerSecondSquared
390
390
  */
@@ -417,7 +417,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
417
417
  /// | Revolutions | ``revolutions`` | rev | `360` |
418
418
  NS_SWIFT_SENDABLE
419
419
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
420
- @interface NSUnitAngle : NSDimension <NSSecureCoding>
420
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitAngle : NSDimension <NSSecureCoding>
421
421
  /*
422
422
  Base unit - degrees
423
423
  */
@@ -466,7 +466,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
466
466
  /// | Hectares | ``hectares`` | ha | `10000` |
467
467
  NS_SWIFT_SENDABLE
468
468
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
469
- @interface NSUnitArea : NSDimension <NSSecureCoding>
469
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitArea : NSDimension <NSSecureCoding>
470
470
  /*
471
471
  Base unit - squareMeters
472
472
  */
@@ -520,7 +520,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
520
520
  /// | Millimoles Per Liter | ``millimolesPerLiter(withGramsPerMole:)`` | mmol/L | `18 * gramsPerMole` |
521
521
  NS_SWIFT_SENDABLE
522
522
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
523
- @interface NSUnitConcentrationMass : NSDimension <NSSecureCoding>
523
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitConcentrationMass : NSDimension <NSSecureCoding>
524
524
  /*
525
525
  Base unit - gramsPerLiter
526
526
  */
@@ -551,7 +551,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
551
551
  /// | Parts Per Million | ``partsPerMillion`` | ppm |
552
552
  NS_SWIFT_SENDABLE
553
553
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
554
- @interface NSUnitDispersion : NSDimension <NSSecureCoding>
554
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitDispersion : NSDimension <NSSecureCoding>
555
555
  /*
556
556
  Base unit - partsPerMillion
557
557
  */
@@ -581,7 +581,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
581
581
  /// | Hours | ``hours`` | hr | `3600` |
582
582
  NS_SWIFT_SENDABLE
583
583
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
584
- @interface NSUnitDuration : NSDimension <NSSecureCoding> // Note: This class is not meant to be used for date calculation. Use NSDate/NSCalendar/NSDateComponents for calendrical date and time operations.
584
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitDuration : NSDimension <NSSecureCoding> // Note: This class is not meant to be used for date calculation. Use NSDate/NSCalendar/NSDateComponents for calendrical date and time operations.
585
585
  /*
586
586
  Base unit - seconds
587
587
  */
@@ -624,7 +624,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
624
624
  /// | Microampere Hours | ``microampereHours`` | µAh | `0.0036` |
625
625
  NS_SWIFT_SENDABLE
626
626
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
627
- @interface NSUnitElectricCharge : NSDimension <NSSecureCoding>
627
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitElectricCharge : NSDimension <NSSecureCoding>
628
628
  /*
629
629
  Base unit - coulombs
630
630
  */
@@ -664,7 +664,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
664
664
  /// | Microamperes | ``microamperes`` | µA | `0.000001` |
665
665
  NS_SWIFT_SENDABLE
666
666
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
667
- @interface NSUnitElectricCurrent : NSDimension <NSSecureCoding>
667
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitElectricCurrent : NSDimension <NSSecureCoding>
668
668
  /*
669
669
  Base unit - amperes
670
670
  */
@@ -702,7 +702,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
702
702
  /// | Microvolts | ``microvolts`` | µV | `0.000001` |
703
703
  NS_SWIFT_SENDABLE
704
704
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
705
- @interface NSUnitElectricPotentialDifference : NSDimension <NSSecureCoding>
705
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitElectricPotentialDifference : NSDimension <NSSecureCoding>
706
706
  /*
707
707
  Base unit - volts
708
708
  */
@@ -740,7 +740,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
740
740
  /// | Microohms | ``microohms`` | µΩ | `0.000001` |
741
741
  NS_SWIFT_SENDABLE
742
742
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
743
- @interface NSUnitElectricResistance : NSDimension <NSSecureCoding>
743
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitElectricResistance : NSDimension <NSSecureCoding>
744
744
  /*
745
745
  Base unit - ohms
746
746
  */
@@ -778,7 +778,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
778
778
  /// | Kilowatt Hours | ``kilowattHours`` | kWh | `3600000.0` |
779
779
  NS_SWIFT_SENDABLE
780
780
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
781
- @interface NSUnitEnergy : NSDimension <NSSecureCoding>
781
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitEnergy : NSDimension <NSSecureCoding>
782
782
  /*
783
783
  Base unit - joules
784
784
  */
@@ -819,7 +819,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
819
819
  /// | Nanohertz | ``nanohertz`` | nHz | `1e-9` |
820
820
  NS_SWIFT_SENDABLE
821
821
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
822
- @interface NSUnitFrequency : NSDimension <NSSecureCoding>
822
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitFrequency : NSDimension <NSSecureCoding>
823
823
  /*
824
824
  Base unit - hertz
825
825
  */
@@ -865,7 +865,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
865
865
  /// | Miles Per Imperial Gallon | ``milesPerImperialGallon`` | mpg |
866
866
  NS_SWIFT_SENDABLE
867
867
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
868
- @interface NSUnitFuelEfficiency : NSDimension <NSSecureCoding>
868
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitFuelEfficiency : NSDimension <NSSecureCoding>
869
869
  /*
870
870
  Base unit - litersPer100Kilometers
871
871
  */
@@ -1045,7 +1045,7 @@ NS_SWIFT_NAME(UnitInformationStorage)
1045
1045
  /// | Parsecs | ``parsecs`` | pc | `3.086e+16` |
1046
1046
  NS_SWIFT_SENDABLE
1047
1047
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1048
- @interface NSUnitLength : NSDimension <NSSecureCoding>
1048
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitLength : NSDimension <NSSecureCoding>
1049
1049
  /*
1050
1050
  Base unit - meters
1051
1051
  */
@@ -1113,7 +1113,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1113
1113
  /// | Lux | ``lux`` | lx |
1114
1114
  NS_SWIFT_SENDABLE
1115
1115
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1116
- @interface NSUnitIlluminance : NSDimension <NSSecureCoding>
1116
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitIlluminance : NSDimension <NSSecureCoding>
1117
1117
  /*
1118
1118
  Base unit - lux
1119
1119
  */
@@ -1154,7 +1154,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1154
1154
  /// | Slugs | ``slugs`` | slug | `14.5939` |
1155
1155
  NS_SWIFT_SENDABLE
1156
1156
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1157
- @interface NSUnitMass : NSDimension <NSSecureCoding>
1157
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitMass : NSDimension <NSSecureCoding>
1158
1158
  /*
1159
1159
  Base unit - kilograms
1160
1160
  */
@@ -1220,7 +1220,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1220
1220
  /// | Horsepower | ``horsepower`` | hp | `745.7` |
1221
1221
  NS_SWIFT_SENDABLE
1222
1222
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1223
- @interface NSUnitPower : NSDimension <NSSecureCoding>
1223
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitPower : NSDimension <NSSecureCoding>
1224
1224
  /*
1225
1225
  Base unit - watts
1226
1226
  */
@@ -1275,7 +1275,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1275
1275
  /// | Pounds Per Square Inch | ``poundsForcePerSquareInch`` | psi | `6894.76` |
1276
1276
  NS_SWIFT_SENDABLE
1277
1277
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1278
- @interface NSUnitPressure : NSDimension <NSSecureCoding>
1278
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitPressure : NSDimension <NSSecureCoding>
1279
1279
  /*
1280
1280
  Base unit - newtonsPerMetersSquared (equivalent to 1 pascal)
1281
1281
  */
@@ -1324,7 +1324,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1324
1324
  /// The base unit is ``metersPerSecond`` and is accessed via ``NSDimension/baseUnit`` on the ``NSDimension`` protocol.
1325
1325
  NS_SWIFT_SENDABLE
1326
1326
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1327
- @interface NSUnitSpeed : NSDimension <NSSecureCoding>
1327
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitSpeed : NSDimension <NSSecureCoding>
1328
1328
  /*
1329
1329
  Base unit - metersPerSecond
1330
1330
  */
@@ -1358,7 +1358,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1358
1358
  /// | Degree Fahrenheit | ``fahrenheit`` | °F | `0.55555555555556` | `255.37222222222427` |
1359
1359
  NS_SWIFT_SENDABLE
1360
1360
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1361
- @interface NSUnitTemperature : NSDimension <NSSecureCoding>
1361
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitTemperature : NSDimension <NSSecureCoding>
1362
1362
  /*
1363
1363
  Base unit - kelvin
1364
1364
  */
@@ -1418,7 +1418,7 @@ API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1418
1418
  /// | Metric Cups | ``metricCups`` | metric cup | `0.25` |
1419
1419
  NS_SWIFT_SENDABLE
1420
1420
  API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
1421
- @interface NSUnitVolume : NSDimension <NSSecureCoding>
1421
+ PEACH_SWIFT_CLASS(Foundation) @interface NSUnitVolume : NSDimension <NSSecureCoding>
1422
1422
  /*
1423
1423
  Base unit - liters
1424
1424
  */
@@ -13,7 +13,7 @@ typedef NSString * CAValueFunctionName NS_TYPED_ENUM API_AVAILABLE(macos(10.6),
13
13
  NS_HEADER_AUDIT_BEGIN(nullability, sendability)
14
14
 
15
15
  API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
16
- PEACH_SWIFT_CLASS(QuartzCore) @interface CAValueFunction : NSObject <NSSecureCoding>
16
+ @interface CAValueFunction : NSObject <NSSecureCoding>
17
17
  {
18
18
  @protected
19
19
  NSString *_string;