From 3d2658717ad3f476d49983c33de546b51847236c Mon Sep 17 00:00:00 2001 From: Mads Marquart Date: Sat, 10 Feb 2024 00:05:27 +0100 Subject: [PATCH] Make Cargo feature flags be file-based instead of class based --- .../src/bin/check_icrate_features.rs | 16 +- crates/header-translator/src/expr.rs | 12 +- crates/header-translator/src/feature.rs | 51 +- crates/header-translator/src/file.rs | 11 + crates/header-translator/src/id.rs | 39 +- crates/header-translator/src/library.rs | 9 +- crates/header-translator/src/output.rs | 43 +- crates/header-translator/src/rust_type.rs | 15 +- crates/header-translator/src/stmt.rs | 195 +- .../header-translator/translation-config.toml | 100 +- crates/icrate/CHANGELOG.md | 40 + crates/icrate/Cargo.toml | 4366 +++++------------ .../src/additions/AppKit/application.rs | 8 + crates/icrate/src/additions/AppKit/image.rs | 17 + crates/icrate/src/additions/AppKit/mod.rs | 59 +- crates/icrate/src/additions/AppKit/text.rs | 20 + .../additions/AuthenticationServices/mod.rs | 41 +- .../icrate/src/additions/Foundation/array.rs | 33 +- .../additions/Foundation/attributed_string.rs | 29 +- .../icrate/src/additions/Foundation/bundle.rs | 18 +- .../src/additions/Foundation/copying.rs | 3 + .../icrate/src/additions/Foundation/data.rs | 32 +- .../icrate/src/additions/Foundation/debug.rs | 97 - .../src/additions/Foundation/dictionary.rs | 64 +- .../src/additions/Foundation/enumerator.rs | 1 - .../icrate/src/additions/Foundation/error.rs | 1 - .../src/additions/Foundation/exception.rs | 14 +- .../src/additions/Foundation/generics.rs | 4 +- .../src/additions/Foundation/geometry.rs | 3 +- .../icrate/src/additions/Foundation/iter.rs | 2 +- crates/icrate/src/additions/Foundation/mod.rs | 39 +- .../icrate/src/additions/Foundation/number.rs | 17 +- .../src/additions/Foundation/process_info.rs | 1 - crates/icrate/src/additions/Foundation/set.rs | 31 +- .../icrate/src/additions/Foundation/string.rs | 23 +- .../src/additions/Foundation/tests/array.rs | 3 +- .../Foundation/tests/attributed_string.rs | 6 +- .../additions/Foundation/tests/dictionary.rs | 1 + .../src/additions/Foundation/tests/error.rs | 8 +- .../Foundation/tests/mutable_array.rs | 11 +- .../Foundation/tests/mutable_data.rs | 2 +- .../Foundation/tests/mutable_dictionary.rs | 13 +- .../additions/Foundation/tests/mutable_set.rs | 9 +- .../Foundation/tests/mutable_string.rs | 22 +- .../src/additions/Foundation/tests/number.rs | 2 +- .../src/additions/Foundation/tests/set.rs | 6 +- .../src/additions/Foundation/tests/string.rs | 15 +- .../src/additions/Foundation/tests/value.rs | 19 +- .../icrate/src/additions/Foundation/thread.rs | 9 + .../src/additions/Foundation/to_owned.rs | 12 +- .../icrate/src/additions/Foundation/uuid.rs | 1 - .../icrate/src/additions/Foundation/value.rs | 29 +- .../additions/GameController/input_names.rs | 83 + .../src/additions/GameController/mod.rs | 99 +- .../src/additions/InputMethodKit/mod.rs | 29 +- crates/icrate/src/additions/MapKit/mod.rs | 2 +- crates/icrate/src/additions/Metal/capture.rs | 25 +- crates/icrate/src/additions/Metal/device.rs | 8 +- crates/icrate/src/additions/Metal/mod.rs | 23 +- crates/icrate/src/additions/Metal/private.rs | 41 +- .../Metal/{shift_mask.rs => resource.rs} | 0 crates/icrate/src/additions/Metal/slice.rs | 21 +- .../icrate/src/additions/MetricKit/manager.rs | 35 + crates/icrate/src/additions/MetricKit/mod.rs | 37 +- crates/icrate/src/additions/QuartzCore/mod.rs | 3 +- crates/icrate/src/common.rs | 3 + crates/icrate/src/generated | 2 +- .../crates/test_declare_class/Cargo.toml | 3 +- crates/test-ui/Cargo.toml | 4 +- .../implement_protocol_missing_super.stderr | 8 +- .../test-ui/ui/msg_send_invalid_error.stderr | 6 +- crates/test-ui/ui/nsarray_not_message.stderr | 9 +- .../ui/protocol_object_only_protocols.stderr | 72 +- crates/tests/Cargo.toml | 6 +- 74 files changed, 2365 insertions(+), 3776 deletions(-) create mode 100644 crates/icrate/src/additions/AppKit/application.rs create mode 100644 crates/icrate/src/additions/AppKit/image.rs create mode 100644 crates/icrate/src/additions/AppKit/text.rs delete mode 100644 crates/icrate/src/additions/Foundation/debug.rs create mode 100644 crates/icrate/src/additions/GameController/input_names.rs rename crates/icrate/src/additions/Metal/{shift_mask.rs => resource.rs} (100%) create mode 100644 crates/icrate/src/additions/MetricKit/manager.rs diff --git a/crates/header-translator/src/bin/check_icrate_features.rs b/crates/header-translator/src/bin/check_icrate_features.rs index 6f264e36c..2d5af6081 100644 --- a/crates/header-translator/src/bin/check_icrate_features.rs +++ b/crates/header-translator/src/bin/check_icrate_features.rs @@ -14,17 +14,12 @@ struct CargoToml { const POPULAR_FEATURES: &[&str] = &[ "Foundation_NSString", - "Foundation_NSMutableString", "Foundation_NSArray", - "Foundation_NSMutableArray", "Foundation_NSDictionary", - "Foundation_NSMutableDictionary", "Foundation_NSSet", - "Foundation_NSMutableSet", "Foundation_NSEnumerator", "Foundation_NSError", "Foundation_NSException", - "Foundation_NSNumber", "Foundation_NSValue", "Foundation_NSThread", ]; @@ -55,8 +50,11 @@ fn main() -> Result<(), Box> { } else if feature.contains("_all") || feature.contains("unstable-frameworks-") { // Skip "_all" features for now None - } else if !feature.contains("Foundation") { - // Skip all other than "Foundation" features for now + } else if !feature.contains("Foundation") + && !feature.contains("AppKit") + && !feature.contains("Metal") + { + // Skip all other than "Foundation", "AppKit" and "Metal" features for now None } else { Some(vec![&**feature]) @@ -67,7 +65,7 @@ fn main() -> Result<(), Box> { for features in feature_sets { println!( - "running: cargo check --features=Foundation,{}", + "running: cargo check --features=Foundation,AppKit,Metal,{}", features.join(",") ); @@ -77,6 +75,8 @@ fn main() -> Result<(), Box> { "--quiet", "--package=icrate", "--features=Foundation", + "--features=AppKit", + "--features=Metal", "--features", &features.join(","), ]) diff --git a/crates/header-translator/src/expr.rs b/crates/header-translator/src/expr.rs index 38e0d5928..1e9eeb40d 100644 --- a/crates/header-translator/src/expr.rs +++ b/crates/header-translator/src/expr.rs @@ -201,14 +201,14 @@ impl Expr { // features.add_item(&id); } } - Self::Enum { .. } => { - // features.add_item(&id); + Self::Enum { id, .. } => { + features.add_item(id); } - Self::Const(_) => { - // features.add_item(&id); + Self::Const(id) => { + features.add_item(id); } - Self::Var { ty, .. } => { - // features.add_item(&id); + Self::Var { id, ty, .. } => { + features.add_item(id); features.merge(ty.required_features(&Features::new())); } Self::Tokens(tokens) => { diff --git a/crates/header-translator/src/feature.rs b/crates/header-translator/src/feature.rs index bc8da913f..c75afa057 100644 --- a/crates/header-translator/src/feature.rs +++ b/crates/header-translator/src/feature.rs @@ -3,21 +3,27 @@ use std::fmt; use clang::{Entity, EntityKind}; +use crate::file::clean_name; +use crate::id::ToOptionString; +use crate::stmt::parse_direct_protocols; +use crate::Mutability; use crate::{stmt::parse_superclasses, Context, ItemIdentifier}; #[derive(Debug, Clone, PartialEq, Eq, Hash)] -pub struct Feature<'a>(&'a ItemIdentifier); +pub struct Feature<'a, N>(&'a ItemIdentifier); -impl<'a> Feature<'a> { - pub fn new(item: &'a ItemIdentifier) -> Self { +impl<'a, N: ToOptionString> Feature<'a, N> { + pub fn new(item: &'a ItemIdentifier) -> Self { Self(item) } pub fn name(&self) -> Option { if self.0.is_system() { None + } else if let Some(file_name) = &self.0.file_name { + Some(format!("{}_{}", self.0.library, clean_name(file_name))) } else { - Some(format!("{}_{}", self.0.library, self.0.name)) + Some(format!("Unknown-{}_{:?}", self.0.library, self.0.name)) } } } @@ -38,7 +44,7 @@ impl Features { } } - pub fn remove_item(&mut self, item: &ItemIdentifier) { + pub fn remove_item(&mut self, item: &ItemIdentifier) { if let Some(name) = Feature::new(item).name() { self.0.remove(&name); } @@ -91,28 +97,37 @@ impl Features { pub(crate) fn required_by_decl(entity: &Entity<'_>, context: &Context<'_>) -> Self { match entity.get_kind() { EntityKind::ObjCInterfaceDecl => { + let id = ItemIdentifier::new(entity, context); + let data = context.class_data.get(&id.name); + + let mut features = Self::new(); + features.add_item(&id); + for (id, _, _) in parse_superclasses(entity, context) { + features.add_item(&id); + } + if let Some(Mutability::ImmutableWithMutableSubclass(subclass)) = + data.map(|data| &data.mutability) + { + features.add_item(subclass); + } + + features + } + EntityKind::ObjCProtocolDecl => { let mut features = Self::new(); features.add_item(&ItemIdentifier::new(entity, context)); + for entity in parse_direct_protocols(entity, context) { + features.merge(Self::required_by_decl(&entity, context)); + } features } - EntityKind::ObjCProtocolDecl => Self::new(), _ => panic!("invalid required_by_decl kind {entity:?}"), } } /// Get the features implied enabled by having a given declaration. pub(crate) fn implied_by_decl(entity: &Entity<'_>, context: &Context<'_>) -> Self { - let mut features = Self::required_by_decl(entity, context); - match entity.get_kind() { - EntityKind::ObjCInterfaceDecl => { - // The feature is enabled if superclass' features are. - for (id, _, _) in parse_superclasses(entity, context) { - features.add_item(&id); - } - features - } - EntityKind::ObjCProtocolDecl => features, - _ => panic!("invalid implied_by_decl kind {entity:?}"), - } + // No extra features are implied + Self::required_by_decl(entity, context) } } diff --git a/crates/header-translator/src/file.rs b/crates/header-translator/src/file.rs index b2dd90127..f68cc8d58 100644 --- a/crates/header-translator/src/file.rs +++ b/crates/header-translator/src/file.rs @@ -2,6 +2,7 @@ use std::fmt; use crate::context::Context; use crate::stmt::Stmt; +use crate::ItemIdentifier; #[derive(Debug, PartialEq)] pub struct File { @@ -10,6 +11,11 @@ pub struct File { pub(crate) stmts: Vec, } +/// Some SDK files have '+' in the file name, so we change those to `_`. +pub(crate) fn clean_name(name: &str) -> String { + name.replace('+', "_") +} + impl File { pub fn new(library_name: &str, context: &Context<'_>) -> Self { Self { @@ -27,6 +33,11 @@ impl File { pub fn add_stmt(&mut self, stmt: Stmt) { self.stmts.push(stmt); } + + pub(crate) fn required_imports(&self) -> impl Iterator + '_ { + // TODO + vec![].into_iter() + } } impl fmt::Display for File { diff --git a/crates/header-translator/src/id.rs b/crates/header-translator/src/id.rs index b8d7db81f..4a3b740e5 100644 --- a/crates/header-translator/src/id.rs +++ b/crates/header-translator/src/id.rs @@ -6,7 +6,7 @@ use clang::Entity; use crate::context::Context; -pub trait ToOptionString { +pub trait ToOptionString: fmt::Debug { fn to_option(&self) -> Option<&str>; } @@ -22,6 +22,12 @@ impl ToOptionString for Option { } } +impl ToOptionString for () { + fn to_option(&self) -> Option<&str> { + None + } +} + #[derive(Debug, Clone)] pub struct ItemIdentifier { /// Names in Objective-C are global, so this is always enough to uniquely @@ -76,12 +82,14 @@ impl ItemIdentifier { ("__Unknown__".to_string(), None) }); - // TODO: Get rid of this hack - if library_name == "CoreGraphics" { - if let Some("CGFloat" | "CGPoint" | "CGRect" | "CGSize") = name.to_option() { - library_name = "Foundation".to_string(); - file_name = Some("NSGeometry".to_string()); - } + // TODO: Get rid of these hacks + if let Some("CGFloat" | "CGPoint" | "CGRect" | "CGSize") = name.to_option() { + library_name = "Foundation".to_string(); + file_name = Some("NSGeometry".to_string()); + } + if let Some("CFTimeInterval") = name.to_option() { + library_name = "System".to_string(); + file_name = None; } Self { @@ -104,6 +112,13 @@ impl ItemIdentifier { } } + pub fn location(&self) -> Location + where + N: Clone, + { + self.clone().map_name(|_| ()) + } + pub fn with_new_path(self, other: &ItemIdentifier) -> Self { Self { name: self.name, @@ -111,6 +126,10 @@ impl ItemIdentifier { file_name: other.file_name.clone(), } } + + pub fn is_system(&self) -> bool { + self.library == "System" + } } impl ItemIdentifier { @@ -123,10 +142,6 @@ impl ItemIdentifier { self.map_name(Some) } - pub fn is_system(&self) -> bool { - self.library == "System" - } - pub fn is_nsobject(&self) -> bool { self.library == "System" && (self.name == "NSObject" || self.name == "NSObjectProtocol") } @@ -193,3 +208,5 @@ impl ItemIdentifier> { Self::with_name(entity.get_name(), entity, context) } } + +pub type Location = ItemIdentifier<()>; diff --git a/crates/header-translator/src/library.rs b/crates/header-translator/src/library.rs index 75757b823..55ef06a6d 100644 --- a/crates/header-translator/src/library.rs +++ b/crates/header-translator/src/library.rs @@ -5,6 +5,7 @@ use std::io; use std::path::Path; use crate::config::LibraryData; +use crate::file::clean_name; use crate::file::File; /// Some SDK files have '+' in the file name, so we change those to `_`. @@ -100,7 +101,8 @@ impl fmt::Display for Library { writeln!(f)?; for name in self.files.keys() { - let name = clean_file_name(name); + let name = clean_name(name); + write!(f, "#[cfg(feature = \"{}_{}\")]", self.link_name, name)?; writeln!(f, "#[path = \"{name}.rs\"]")?; writeln!(f, "mod __{name};")?; } @@ -109,11 +111,11 @@ impl fmt::Display for Library { for (file_name, file) in &self.files { for stmt in &file.stmts { - let features = stmt.required_features(); - if let Some(item) = stmt.provided_item() { assert_eq!(item.file_name.as_ref(), Some(file_name)); + let mut features = stmt.required_features(); + features.add_item(&item); write!(f, "{}", features.cfg_gate_ln())?; let visibility = if item.name.starts_with('_') { @@ -121,7 +123,6 @@ impl fmt::Display for Library { } else { "pub" }; - write!( f, "{visibility} use self::__{}::{{{}}};", diff --git a/crates/header-translator/src/output.rs b/crates/header-translator/src/output.rs index 13203b120..9bbc7e468 100644 --- a/crates/header-translator/src/output.rs +++ b/crates/header-translator/src/output.rs @@ -5,8 +5,8 @@ use std::path::Path; use crate::config::{Config, LibraryData}; use crate::feature::Feature; +use crate::file::clean_name; use crate::library::Library; -use crate::stmt::Stmt; use semver::VersionReq; @@ -125,34 +125,19 @@ impl Output { for (library_name, library) in &self.libraries { let mut library_features = BTreeSet::from([library_name.clone()]); - for file in library.files.values() { - for stmt in &file.stmts { - #[allow(clippy::single_match)] // There will be others - match stmt { - Stmt::ClassDecl { - id, superclasses, .. - } => { - if let Some(feature) = Feature::new(id).name() { - // Only require the first superclass as feature, - // since the rest will be enabled transitively. - if let Some((superclass, _)) = superclasses.first() { - let superclass_features: Vec<_> = - Feature::new(superclass).name().into_iter().collect(); - if let Some(existing) = - features.insert(feature.clone(), superclass_features) - { - error!(?existing, "duplicate feature"); - } - } - - if !library_features.insert(feature) { - error!("duplicate feature"); - } - } - } - _ => {} - } - } + for (file_name, file) in &library.files { + let feature_name = format!("{}_{}", library_name, clean_name(file_name)); + let mut required_features: BTreeSet<_> = file + .required_imports() // TODO + .filter_map(|id| Feature::new(&id).name()) + .collect(); + required_features.remove(&feature_name); // Don't depend on itself + required_features.clear(); // TODO + features.insert( + feature_name.clone(), + required_features.into_iter().collect(), + ); + library_features.insert(feature_name); } let _ = features.insert( diff --git a/crates/header-translator/src/rust_type.rs b/crates/header-translator/src/rust_type.rs index 39eb0ee24..7822f8121 100644 --- a/crates/header-translator/src/rust_type.rs +++ b/crates/header-translator/src/rust_type.rs @@ -1007,14 +1007,23 @@ impl Ty { Self::Sel { .. } => Features::new(), Self::Pointer { pointee, .. } => pointee.required_features(self_features), Self::IncompleteArray { pointee, .. } => pointee.required_features(self_features), - Self::TypeDef { to, .. } => to.required_features(self_features), + Self::TypeDef { id, to, .. } => { + let mut features = to.required_features(self_features); + features.add_item(id); + features + } Self::Array { element_type, .. } => element_type.required_features(self_features), - Self::Enum { ty, .. } => ty.required_features(self_features), - Self::Struct { fields, .. } => { + Self::Enum { id, ty } => { + let mut features = ty.required_features(self_features); + features.add_item(id); + features + } + Self::Struct { id, fields } => { let mut features = Features::new(); for field in fields { features.merge(field.required_features(self_features)); } + features.add_item(id); features } Self::Fn { diff --git a/crates/header-translator/src/stmt.rs b/crates/header-translator/src/stmt.rs index 6765ded64..22c6c71bb 100644 --- a/crates/header-translator/src/stmt.rs +++ b/crates/header-translator/src/stmt.rs @@ -1,4 +1,5 @@ use std::borrow::Cow; +use std::collections::BTreeMap; use std::collections::BTreeSet; use std::collections::HashSet; use std::fmt; @@ -13,6 +14,7 @@ use crate::context::Context; use crate::expr::Expr; use crate::feature::Features; use crate::id::ItemIdentifier; +use crate::id::Location; use crate::immediate_children; use crate::method::{handle_reserved, Method}; use crate::rust_type::Ty; @@ -38,9 +40,9 @@ impl fmt::Display for Derives { } /// Find all protocols, protocol's protocols and superclass' protocols. -fn parse_protocols( - entity: &Entity<'_>, - protocols: &mut BTreeSet, +fn parse_protocols<'tu>( + entity: &Entity<'tu>, + protocols: &mut BTreeMap>, context: &Context<'_>, ) { immediate_children(entity, |entity, _span| match entity.get_kind() { @@ -48,10 +50,10 @@ fn parse_protocols( let entity = entity .get_reference() .expect("ObjCProtocolRef to reference entity"); - if protocols.insert( - ItemIdentifier::new(&entity, context) - .map_name(|name| context.replace_protocol_name(name)), - ) { + if protocols + .insert(ItemIdentifier::new(&entity, context), entity) + .is_none() + { // Only recurse if we haven't already seen this protocol parse_protocols(&entity, protocols, context); } @@ -386,6 +388,7 @@ pub enum Stmt { /// extern_class! ClassDecl { id: ItemIdentifier, + features: Features, generics: Vec, availability: Availability, superclasses: Vec<(ItemIdentifier, Vec)>, @@ -399,8 +402,10 @@ pub enum Stmt { /// -> /// extern_methods! ExternMethods { + id: Location, availability: Availability, cls: ItemIdentifier, + cls_features: Features, source_superclass: Option, cls_generics: Vec, category_name: Option, @@ -422,6 +427,7 @@ pub enum Stmt { /// extern_protocol! ProtocolDecl { id: ItemIdentifier, + features: Features, actual_name: Option, availability: Availability, protocols: BTreeSet, @@ -432,8 +438,11 @@ pub enum Stmt { /// @interface ty: _ /// @interface ty (_) ProtocolImpl { + id: Location, cls: ItemIdentifier, + cls_features: Features, protocol: ItemIdentifier, + protocol_features: Features, generics: Vec, availability: Availability, }, @@ -592,6 +601,7 @@ impl Stmt { let availability = Availability::parse(entity, context); let thread_safety = ThreadSafety::from_decl(entity, context); + let features = Features::required_by_decl(entity, context); let implied_features = Features::implied_by_decl(entity, context); verify_objc_decl(entity, context); @@ -609,11 +619,10 @@ impl Stmt { let mut protocols = Default::default(); parse_protocols(entity, &mut protocols, context); - let skipped_protocols = data .map(|data| data.skipped_protocols.clone()) .unwrap_or_default(); - protocols.retain(|protocol| !skipped_protocols.contains(&protocol.name)); + protocols.retain(|protocol, _| !skipped_protocols.contains(&protocol.name)); let superclasses_full = parse_superclasses(entity, context); @@ -663,8 +672,10 @@ impl Stmt { None } else { Some(Self::ExternMethods { + id: id.location(), availability: Availability::parse(entity, context), cls: id.clone(), + cls_features: features.clone(), source_superclass: Some(superclass_id.clone()), cls_generics: generics.clone(), category_name: None, @@ -675,8 +686,10 @@ impl Stmt { .collect(); let methods = Self::ExternMethods { + id: id.location(), availability: availability.clone(), cls: id.clone(), + cls_features: features.clone(), source_superclass: None, cls_generics: generics.clone(), category_name: None, @@ -685,6 +698,7 @@ impl Stmt { iter::once(Self::ClassDecl { id: id.clone(), + features: features.clone(), generics: generics.clone(), availability: availability.clone(), superclasses, @@ -700,9 +714,12 @@ impl Stmt { // trait, it's propagated to subclasses anyhow! sendable: thread_safety.explicit_sendable(), }) - .chain(protocols.into_iter().map(|protocol| Self::ProtocolImpl { + .chain(protocols.into_iter().map(|(p, entity)| Self::ProtocolImpl { + id: id.location(), cls: id.clone(), - protocol, + cls_features: features.clone(), + protocol: p.map_name(|name| context.replace_protocol_name(name)), + protocol_features: Features::required_by_decl(&entity, context), generics: generics.clone(), availability: availability.clone(), })) @@ -732,6 +749,7 @@ impl Stmt { let cls_entity = cls_entity.expect("could not find category class"); let cls_thread_safety = ThreadSafety::from_decl(&cls_entity, context); + let cls_features = Features::required_by_decl(&cls_entity, context); let cls = ItemIdentifier::new(&cls_entity, context); let data = context.class_data.get(&cls.name); @@ -758,20 +776,20 @@ impl Stmt { .map(|data| data.skipped_protocols.clone()) .unwrap_or_default(); let protocols = parse_direct_protocols(entity, context); - let protocols: BTreeSet<_> = protocols + let protocols: BTreeMap<_, _> = protocols .into_iter() - .map(|protocol| { - ItemIdentifier::new(&protocol, context) - .map_name(|name| context.replace_protocol_name(name)) - }) - .filter(|protocol| !skipped_protocols.contains(&protocol.name)) + .map(|entity| (ItemIdentifier::new(&entity, context), entity)) + .filter(|(protocol, _)| !skipped_protocols.contains(&protocol.name)) .collect(); - let protocol_impls = protocols.into_iter().map(|protocol| Self::ProtocolImpl { + let protocol_impls = protocols.into_iter().map(|(p, entity)| Self::ProtocolImpl { + id: category.location(), cls: cls.clone(), + cls_features: cls_features.clone(), generics: generics.clone(), availability: availability.clone(), - protocol, + protocol: p.map_name(|name| context.replace_protocol_name(name)), + protocol_features: Features::required_by_decl(&entity, context), }); // For ease-of-use, if the category is defined in the same @@ -826,12 +844,15 @@ impl Stmt { None } else { Some(Self::ExternMethods { + id: category.location(), source_superclass: Some(cls.clone()), // Assume that immutable/mutable pairs have the - // same availability. + // same availability ... availability: availability.clone(), cls: subclass, - // And that they have the same amount of generics. + // ... the same features ... + cls_features: cls_features.clone(), + // ... and that they have the same amount of generics. cls_generics: generics.clone(), category_name: category.name.clone(), methods, @@ -842,8 +863,10 @@ impl Stmt { }; iter::once(Self::ExternMethods { + id: category.location(), availability: availability.clone(), cls: cls.clone(), + cls_features: cls_features.clone(), source_superclass: None, cls_generics: generics.clone(), category_name: category.name.clone(), @@ -914,7 +937,7 @@ impl Stmt { actual_name: category.name.clone(), availability: availability.clone(), cls: cls.clone(), - cls_features: Features::required_by_decl(&cls_entity, context), + cls_features: cls_features.clone(), methods, }) } @@ -972,6 +995,7 @@ impl Stmt { vec![Self::ProtocolDecl { id, + features: Features::required_by_decl(entity, context), actual_name, availability, protocols, @@ -1391,47 +1415,50 @@ impl Stmt { /// Features required for the statement itself to be available. pub(crate) fn required_features(&self) -> Features { - let mut features = Features::new(); - - match self { - Self::ClassDecl { id, skipped, .. } => { - if !*skipped { - features.add_item(id); - // Superclass features are implied. - // for (superclass, _) in superclasses { - // features.add_item(superclass); - // } - } - } - Self::ExternMethods { cls, .. } => { - features.add_item(cls); - } - Self::ExternCategory { .. } => { - // Intentionally doesn't require anything + let mut features = match self { + Self::ClassDecl { features, .. } => features.clone(), + Self::ExternMethods { + id, cls_features, .. + } => { + let mut features = cls_features.clone(); + features.remove_item(id); + features } - Self::ProtocolDecl { .. } => {} - Self::ProtocolImpl { cls, .. } => { - features.add_item(cls); + // Intentionally doesn't require anything + Self::ExternCategory { .. } => Features::new(), + Self::ProtocolDecl { features, .. } => features.clone(), + Self::ProtocolImpl { + id, + cls_features, + protocol_features, + .. + } => { + let mut features = Features::new(); + features.merge(cls_features.clone()); + features.merge(protocol_features.clone()); + features.remove_item(id); + features } Self::StructDecl { fields, .. } => { + let mut features = Features::new(); for (_, field_ty) in fields { features.merge(field_ty.required_features(&Features::new())); } + features } - Self::EnumDecl { ty, variants, .. } => { - features.merge(ty.required_features(&Features::new())); - for (_, _, expr) in variants { - features.merge(expr.required_features()); - } - } - Self::ConstDecl { ty, .. } => { - features.merge(ty.required_features(&Features::new())); + // Variants manage features themselves + Self::EnumDecl { ty, .. } => ty.required_features(&Features::new()), + Self::ConstDecl { ty, value, .. } => { + let mut features = ty.required_features(&Features::new()); + features.merge(value.required_features()); + features } Self::VarDecl { ty, value, .. } => { - features.merge(ty.required_features(&Features::new())); + let mut features = ty.required_features(&Features::new()); if let Some(value) = value { features.merge(value.required_features()); } + features } Self::FnDecl { arguments, @@ -1439,20 +1466,41 @@ impl Stmt { body: None, .. } => { + let mut features = Features::new(); for (_, arg_ty) in arguments { features.merge(arg_ty.required_features(&Features::new())); } features.merge(result_type.required_features(&Features::new())); + features } // TODO - Self::FnDecl { body: Some(_), .. } => {} - Self::AliasDecl { ty, .. } => { - features.merge(ty.required_features(&Features::new())); - } + Self::FnDecl { body: Some(_), .. } => Features::new(), + Self::AliasDecl { ty, .. } => ty.required_features(&Features::new()), + }; + + if let Some(item) = self.provided_item() { + features.remove_item(&item); } features } + + // pub(crate) fn required_imports(&self) -> impl Iterator { + // let required_by_inner: Vec<_> = match self { + // Self::ExternMethods { methods, .. } + // | Self::ExternCategory { methods, .. } + // | Self::ProtocolDecl { methods, .. } => methods + // .iter() + // .flat_map(|method| method.required_items()) + // .collect(), + // Self::EnumDecl { variants, .. } => variants + // .iter() + // .flat_map(|(_, _, expr)| expr.required_items()) + // .collect(), + // _ => vec![], + // }; + // self.required_items().chain(required_by_inner) + // } } impl fmt::Display for Stmt { @@ -1508,6 +1556,7 @@ impl fmt::Display for Stmt { match self { Self::ClassDecl { id, + features: _, generics, availability, superclasses, @@ -1527,19 +1576,6 @@ impl fmt::Display for Stmt { "__inner_extern_class" }; - let main_feature = match mutability { - Mutability::MutableWithImmutableSuperclass(superclass) => { - let mut features = Features::new(); - features.add_item(superclass); - features - } - Mutability::Immutable - | Mutability::Mutable - | Mutability::ImmutableWithMutableSubclass(_) - | Mutability::InteriorMutable - | Mutability::MainThreadOnly => self.required_features(), - }; - let (superclass, superclasses_rest) = superclasses.split_at(1); let (superclass, superclass_generics) = superclass .first() @@ -1547,7 +1583,7 @@ impl fmt::Display for Stmt { writeln!(f, "{macro_name}!(")?; writeln!(f, " {derives}")?; - write!(f, " {}", main_feature.cfg_gate_ln())?; + write!(f, " {}", self.required_features().cfg_gate_ln())?; write!(f, " {availability}")?; write!(f, " pub struct {}", id.name)?; if !generics.is_empty() { @@ -1577,7 +1613,7 @@ impl fmt::Display for Stmt { writeln!(f)?; - write!(f, " {}", main_feature.cfg_gate_ln())?; + write!(f, " {}", self.required_features().cfg_gate_ln())?; writeln!( f, " unsafe impl{} ClassType for {}{} {{", @@ -1629,17 +1665,19 @@ impl fmt::Display for Stmt { if *sendable && generics.is_empty() { writeln!(f)?; - write!(f, "{}", main_feature.cfg_gate_ln())?; + write!(f, "{}", self.required_features().cfg_gate_ln())?; writeln!(f, "unsafe impl Send for {} {{}}", id.name)?; writeln!(f)?; - write!(f, "{}", main_feature.cfg_gate_ln())?; + write!(f, "{}", self.required_features().cfg_gate_ln())?; writeln!(f, "unsafe impl Sync for {} {{}}", id.name)?; } } Self::ExternMethods { + id: _, availability: _, cls, + cls_features: _, source_superclass, cls_generics, category_name, @@ -1734,9 +1772,12 @@ impl fmt::Display for Stmt { writeln!(f, ");")?; } Self::ProtocolImpl { + id, cls, + cls_features: _, generics, protocol, + protocol_features: _, availability: _, } => { let (generic_bound, where_bound) = if !generics.is_empty() { @@ -1783,14 +1824,15 @@ impl fmt::Display for Stmt { f, "unsafe impl{} {} for {}{} {}{{}}", GenericParamsHelper(generics, generic_bound), - protocol.path_in_relation_to(cls), - cls.path(), + protocol.path_in_relation_to(id), + cls.path_in_relation_to(id), GenericTyHelper(generics), WhereBoundHelper(generics, where_bound) )?; } Self::ProtocolDecl { id, + features: _, actual_name, availability, protocols, @@ -1906,9 +1948,8 @@ impl fmt::Display for Stmt { write!(f, " {availability}")?; writeln!(f, " pub enum {} {{", id.name)?; for (name, availability, expr) in variants { - let mut features = Features::new(); - features.merge(expr.required_features()); - features.remove(&ty.required_features(&Features::new())); + let mut features = expr.required_features(); + features.remove(&self.required_features()); features.remove_item(id); write!(f, " {}", features.cfg_gate_ln())?; write!(f, " {availability}")?; diff --git a/crates/header-translator/translation-config.toml b/crates/header-translator/translation-config.toml index 11b70d264..2206edafb 100644 --- a/crates/header-translator/translation-config.toml +++ b/crates/header-translator/translation-config.toml @@ -178,6 +178,8 @@ cfg-apple-link = true extra-features = [ "objc2", "block2", + # Ord, Debug and other such fundamental impls requires these. + "Foundation_NSObjCRuntime", # Some fmt::Debug impls require these "Foundation_NSString", "Foundation_NSDictionary", @@ -990,6 +992,8 @@ shadowPath = { skipped = true } skipped = true [class.CAMetalLayer] skipped = true +[class.CAMetalDisplayLink.methods."initWithMetalLayer:"] +skipped = true # Needs `CAMetalLayer` [class.CAOpenGLLayer] skipped = true [class.CARenderer.methods] @@ -1223,13 +1227,16 @@ skipped = true skipped = true [protocol.PHLivePhotoFrame.methods.time] skipped = true -# Needs `PHLivePhotoFrameProcessingBlock` (skipped because needs `CIImage`) +# Needs `CIImage` from `CoreImage` +[typedef.PHLivePhotoFrameProcessingBlock] +skipped = true +[class.PHLivePhotoEditingContext.methods.fullSizeImage] +skipped = true [class.PHLivePhotoEditingContext.methods.frameProcessor] skipped = true [class.PHLivePhotoEditingContext.methods."setFrameProcessor:"] skipped = true -# Needs `CIImage` from `CoreImage` -[typedef.PHLivePhotoFrameProcessingBlock] +[protocol.PHLivePhotoFrame.methods.image] skipped = true # Needs `dispatch_block_t` [class.PHPhotoLibrary.methods."performChanges:completionHandler:"] @@ -1254,6 +1261,93 @@ skipped = true [class.WKWebsiteDataStore.methods] proxyConfigurations = { skipped = true } "setProxyConfigurations:" = { skipped = true } +# Needs `CIImage` from `CoreImage` +[class.CIImage.categories.NSAppKitAdditions] +skipped = true +# Needs `CIColor` from `CoreImage` +[class.CIColor.categories.NSAppKitAdditions] +skipped = true +# Needs `Symbols` framework +[class.NSImageView.categories.NSSymbolEffect] +skipped = true +# Needs `AVFAudio` framework +[protocol.CXProviderDelegate.methods."provider:didActivateAudioSession:"] +skipped = true +[protocol.CXProviderDelegate.methods."provider:didDeactivateAudioSession:"] +skipped = true +[class.SNAudioStreamAnalyzer.methods."initWithFormat:"] +skipped = true +[class.SNAudioStreamAnalyzer.methods."analyzeAudioBuffer:atAudioFramePosition:"] +skipped = true +[class.SFSpeechAudioBufferRecognitionRequest.methods.nativeAudioFormat] +skipped = true +[class.SFSpeechAudioBufferRecognitionRequest.methods."appendAudioPCMBuffer:"] +skipped = true +# Needs `AVFoundation` framework +[class.AVMediaSelectionOption.categories.MPNowPlayingInfoLanguageOptionAdditions] +skipped = true +[class.AVMediaSelectionGroup.categories.MPNowPlayingInfoLanguageOptionAdditions] +skipped = true +[class.AVPlayerItem.categories.MPAdditions] +skipped = true +[class.MPNowPlayingSession.methods."initWithPlayers:"] +skipped = true +[class.MPNowPlayingSession.methods.players] +skipped = true +[class.MPNowPlayingSession.methods."addPlayer:"] +skipped = true +[class.MPNowPlayingSession.methods."removePlayer:"] +skipped = true +[class.PHContentEditingInput.methods.avAsset] +skipped = true +[class.PHContentEditingInput.methods.audiovisualAsset] +skipped = true +[class.PHImageManager.methods."requestPlayerItemForVideo:options:resultHandler:"] +skipped = true +[class.PHImageManager.methods."requestExportSessionForVideo:options:exportPreset:resultHandler:"] +skipped = true +[class.PHImageManager.methods."requestAVAssetForVideo:options:resultHandler:"] +skipped = true +# Needs `IMKTextInput`, which is defined in `Carbon` for some reason +[class.IMKInputController.methods.client] +skipped = true +# Needs `ModelIO` framework +[class.MTKMesh.methods."initWithMesh:device:error:"] +skipped = true +[class.MTKMesh.methods."newMeshesFromAsset:device:sourceMeshes:error:"] +skipped = true +[class.MTKMesh.methods.vertexDescriptor] +skipped = true +[fn.MTKModelIOVertexDescriptorFromMetal] +skipped = true +[fn.MTKModelIOVertexDescriptorFromMetalWithError] +skipped = true +[fn.MTKMetalVertexDescriptorFromModelIO] +skipped = true +[fn.MTKMetalVertexDescriptorFromModelIOWithError] +skipped = true +[class.MTKTextureLoader.methods."newTextureWithMDLTexture:options:completionHandler:"] +skipped = true +[class.MTKTextureLoader.methods."newTextureWithMDLTexture:options:error:"] +skipped = true +# Needs `MLModel` from the `CoreML` framework +[class.SNClassifySoundRequest.methods."initWithMLModel:error:"] +skipped = true +# Needs `SFAuthorization` from the `SecurityFoundation` framework +[class.CWInterface.methods."commitConfiguration:authorization:error:"] +skipped = true +# Needs the `AddressBook` framework +[class.EKParticipant.methods."ABPersonInAddressBook:"] +skipped = true +# Needs the `UIKit` framework +[class.EAWiFiUnconfiguredAccessoryBrowser.methods."configureAccessory:withConfigurationUIOnViewController:"] +skipped = true +# Needs `CHHapticEngine` from the `CoreHaptics` framework +[class.GCDeviceHaptics.methods."createEngineWithLocality:"] +skipped = true +# Needs `JSValue` from the `JavaScriptCore` framework +[class.WebScriptObject.methods.JSValue] +skipped = true # Uses a pointer to SEL, which doesn't implement Encode yet [protocol.NSMenuDelegate.methods] diff --git a/crates/icrate/CHANGELOG.md b/crates/icrate/CHANGELOG.md index ea0fadcdb..13307d643 100644 --- a/crates/icrate/CHANGELOG.md +++ b/crates/icrate/CHANGELOG.md @@ -29,6 +29,46 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). * **BREAKING**: Changed how enums are handled; now a newtype is generated for each enum, with the enum variants as constants on that newtype, instead of cluttering the top-level namespace. +* **BREAKING**: Changed how feature flags work, they are now based on the + header file name where the item is defined, instead of being based on the + class name itself. + + This should decrease compilation times by quite a lot, at the cost of having + to specify more precisely what you need in your `Cargo.toml`. + + An example migration can be seen in the following: + + ```toml + # Before + [dependencies.icrate] + version = "0.1.0" + features = [ + "Foundation", + "Foundation_NSNotification", + "Foundation_NSString", + "Foundation_NSThread", + "Foundation_NSArray", + "Foundation_NSMutableArray", # Removed, this is included via. `Foundation_NSArray` + "AppKit", + "AppKit_NSApplication", + ] + + # After + [dependencies.icrate] + version = "0.2.0" + features = [ + "Foundation", + "Foundation_NSNotification", + "Foundation_NSString", + "Foundation_NSThread", + "Foundation_NSObject", # Added, required to get the `NSCopying` protocol + "Foundation_NSArray", + "AppKit", + "AppKit_NSResponder", # Added, required by `NSApplication` + "AppKit_NSApplication", + "AppKit_NSRunningApplication", # Added, a lot of application constants come from here + ] + ``` * Marked `NSView::isFlipped`, `NSView::convertRect_toView`, `NSWindow::convertRectToScreen` and `NSWindow::convertPointFromScreen` as safe. diff --git a/crates/icrate/Cargo.toml b/crates/icrate/Cargo.toml index e3236f9c0..8819255e9 100644 --- a/crates/icrate/Cargo.toml +++ b/crates/icrate/Cargo.toml @@ -126,6 +126,8 @@ unstable-example-basic_usage = [ "Foundation_NSArray", "Foundation_NSDictionary", "Foundation_NSEnumerator", + "Foundation_NSRange", + "Foundation_NSObject", ] unstable-example-delegate = [ "apple", @@ -133,20 +135,24 @@ unstable-example-delegate = [ "Foundation_NSNotification", "Foundation_NSString", "Foundation_NSThread", + "Foundation_NSObject", "AppKit", + "AppKit_NSResponder", "AppKit_NSApplication", + "AppKit_NSRunningApplication", ] unstable-example-speech_synthesis = [ "apple", "Foundation", "Foundation_NSString", + "Foundation_NSObject", ] unstable-example-nspasteboard = [ "apple", "Foundation", "Foundation_NSArray", - "Foundation_NSDictionary", "Foundation_NSString", + "Foundation_NSObject", "AppKit", "AppKit_NSPasteboard", ] @@ -154,44 +160,64 @@ unstable-example-browser = [ "apple", "AppKit", "AppKit_NSButton", + "AppKit_NSButtonCell", "AppKit_NSColor", "AppKit_NSMenu", "AppKit_NSMenuItem", "AppKit_NSStackView", - "AppKit_NSTextAttachmentCell", + "AppKit_NSText", "AppKit_NSTextField", "AppKit_NSTextView", + "AppKit_NSView", "AppKit_NSWindow", + "AppKit_NSResponder", + "AppKit_NSControl", + "AppKit_NSApplication", + "AppKit_NSRunningApplication", + "AppKit_NSGraphics", + "AppKit_NSLayoutConstraint", + "AppKit_NSUserInterfaceLayout", "Foundation", "Foundation_NSNotification", "Foundation_NSString", "Foundation_NSThread", "Foundation_NSURL", "Foundation_NSURLRequest", + "Foundation_NSGeometry", "WebKit", "WebKit_WKNavigation", + "WebKit_WKNavigationDelegate", "WebKit_WKWebView", ] unstable-example-metal = [ "apple", "AppKit", + "AppKit_NSGraphics", "AppKit_NSWindow", + "AppKit_NSResponder", + "AppKit_NSApplication", + "AppKit_NSRunningApplication", + "AppKit_NSView", "Foundation", - "Foundation_NSCoder", "Foundation_NSDate", "Foundation_NSError", "Foundation_NSNotification", "Foundation_NSString", "Foundation_NSThread", + "Foundation_NSGeometry", "Metal", - "Metal_MTLCompileOptions", - "Metal_MTLRenderPassDescriptor", - "Metal_MTLRenderPipelineColorAttachmentDescriptor", - "Metal_MTLRenderPipelineColorAttachmentDescriptorArray", - "Metal_MTLRenderPipelineDescriptor", + "Metal_MTLLibrary", + "Metal_MTLRenderPipeline", + "Metal_MTLRenderCommandEncoder", + "Metal_MTLCommandBuffer", + "Metal_MTLCommandEncoder", + "Metal_MTLCommandQueue", + "Metal_MTLPixelFormat", + "Metal_MTLDevice", + "Metal_MTLDrawable", + "Metal_MTLRenderPass", "MetalKit", "MetalKit_MTKView", - "Metal_MTLRenderPassDescriptor", ] # Helps with CI @@ -199,34 +225,27 @@ unstable-frameworks-all = ["unstable-frameworks-ios", "unstable-frameworks-macos # TODO: Autogenerate this unstable-frameworks-ios = ["Foundation_all", "unstable-example-basic_usage", "unstable-example-speech_synthesis"] -# Temporary fix -Foundation_NSProxy = [] - # This section has been automatically generated by `objc2`'s `header-translator`. # DO NOT EDIT Accessibility = [ "Foundation", ] +Accessibility_AXAudiograph = [] Accessibility_AXBrailleMap = [] -Accessibility_AXCategoricalDataAxisDescriptor = [] -Accessibility_AXChartDescriptor = [] +Accessibility_AXColorUtilities = [] Accessibility_AXCustomContent = [] -Accessibility_AXDataPoint = [] -Accessibility_AXDataPointValue = [] -Accessibility_AXDataSeriesDescriptor = [] -Accessibility_AXLiveAudioGraph = [] -Accessibility_AXNumericDataAxisDescriptor = [] +Accessibility_AXFoundation = [] +Accessibility_AXHearingUtilities = [] +Accessibility_AXSettings = [] Accessibility_all = [ "Accessibility", + "Accessibility_AXAudiograph", "Accessibility_AXBrailleMap", - "Accessibility_AXCategoricalDataAxisDescriptor", - "Accessibility_AXChartDescriptor", + "Accessibility_AXColorUtilities", "Accessibility_AXCustomContent", - "Accessibility_AXDataPoint", - "Accessibility_AXDataPointValue", - "Accessibility_AXDataSeriesDescriptor", - "Accessibility_AXLiveAudioGraph", - "Accessibility_AXNumericDataAxisDescriptor", + "Accessibility_AXFoundation", + "Accessibility_AXHearingUtilities", + "Accessibility_AXSettings", ] AdServices = [ "Foundation", @@ -248,606 +267,309 @@ AppKit = [ "CoreData", "Foundation", ] -AppKit_NSATSTypesetter = [ - "AppKit_NSTypesetter", -] +AppKit_AppKitDefines = [] +AppKit_AppKitErrors = [] +AppKit_NSATSTypesetter = [] +AppKit_NSAccessibility = [] +AppKit_NSAccessibilityColor = [] +AppKit_NSAccessibilityConstants = [] AppKit_NSAccessibilityCustomAction = [] AppKit_NSAccessibilityCustomRotor = [] -AppKit_NSAccessibilityCustomRotorItemResult = [] -AppKit_NSAccessibilityCustomRotorSearchParameters = [] AppKit_NSAccessibilityElement = [] -AppKit_NSActionCell = [ - "AppKit_NSCell", -] +AppKit_NSAccessibilityProtocols = [] +AppKit_NSActionCell = [] +AppKit_NSAffineTransform = [] AppKit_NSAlert = [] AppKit_NSAlignmentFeedbackFilter = [] AppKit_NSAnimation = [] AppKit_NSAnimationContext = [] AppKit_NSAppearance = [] -AppKit_NSApplication = [ - "AppKit_NSResponder", -] -AppKit_NSArrayController = [ - "AppKit_NSObjectController", -] +AppKit_NSAppleScriptExtensions = [] +AppKit_NSApplication = [] +AppKit_NSApplicationScripting = [] +AppKit_NSArrayController = [] +AppKit_NSAttributedString = [] AppKit_NSBezierPath = [] -AppKit_NSBindingSelectionMarker = [] -AppKit_NSBitmapImageRep = [ - "AppKit_NSImageRep", -] -AppKit_NSBox = [ - "AppKit_NSView", -] -AppKit_NSBrowser = [ - "AppKit_NSControl", -] -AppKit_NSBrowserCell = [ - "AppKit_NSCell", -] -AppKit_NSButton = [ - "AppKit_NSControl", -] -AppKit_NSButtonCell = [ - "AppKit_NSActionCell", -] -AppKit_NSButtonTouchBarItem = [ - "AppKit_NSTouchBarItem", -] -AppKit_NSCachedImageRep = [ - "AppKit_NSImageRep", -] -AppKit_NSCandidateListTouchBarItem = [ - "AppKit_NSTouchBarItem", -] +AppKit_NSBitmapImageRep = [] +AppKit_NSBox = [] +AppKit_NSBrowser = [] +AppKit_NSBrowserCell = [] +AppKit_NSButton = [] +AppKit_NSButtonCell = [] +AppKit_NSButtonTouchBarItem = [] +AppKit_NSCIImageRep = [] +AppKit_NSCachedImageRep = [] +AppKit_NSCandidateListTouchBarItem = [] AppKit_NSCell = [] -AppKit_NSClickGestureRecognizer = [ - "AppKit_NSGestureRecognizer", -] -AppKit_NSClipView = [ - "AppKit_NSView", -] -AppKit_NSCollectionLayoutAnchor = [] -AppKit_NSCollectionLayoutBoundarySupplementaryItem = [ - "AppKit_NSCollectionLayoutSupplementaryItem", -] -AppKit_NSCollectionLayoutDecorationItem = [ - "AppKit_NSCollectionLayoutItem", -] -AppKit_NSCollectionLayoutDimension = [] -AppKit_NSCollectionLayoutEdgeSpacing = [] -AppKit_NSCollectionLayoutGroup = [ - "AppKit_NSCollectionLayoutItem", -] -AppKit_NSCollectionLayoutGroupCustomItem = [] -AppKit_NSCollectionLayoutItem = [] -AppKit_NSCollectionLayoutSection = [] -AppKit_NSCollectionLayoutSize = [] -AppKit_NSCollectionLayoutSpacing = [] -AppKit_NSCollectionLayoutSupplementaryItem = [ - "AppKit_NSCollectionLayoutItem", -] -AppKit_NSCollectionView = [ - "AppKit_NSView", -] -AppKit_NSCollectionViewCompositionalLayout = [ - "AppKit_NSCollectionViewLayout", -] -AppKit_NSCollectionViewCompositionalLayoutConfiguration = [] -AppKit_NSCollectionViewDiffableDataSource = [] -AppKit_NSCollectionViewFlowLayout = [ - "AppKit_NSCollectionViewLayout", -] -AppKit_NSCollectionViewFlowLayoutInvalidationContext = [ - "AppKit_NSCollectionViewLayoutInvalidationContext", -] -AppKit_NSCollectionViewGridLayout = [ - "AppKit_NSCollectionViewLayout", -] -AppKit_NSCollectionViewItem = [ - "AppKit_NSViewController", -] +AppKit_NSClickGestureRecognizer = [] +AppKit_NSClipView = [] +AppKit_NSCollectionView = [] +AppKit_NSCollectionViewCompositionalLayout = [] +AppKit_NSCollectionViewFlowLayout = [] +AppKit_NSCollectionViewGridLayout = [] AppKit_NSCollectionViewLayout = [] -AppKit_NSCollectionViewLayoutAttributes = [] -AppKit_NSCollectionViewLayoutInvalidationContext = [] -AppKit_NSCollectionViewTransitionLayout = [ - "AppKit_NSCollectionViewLayout", -] -AppKit_NSCollectionViewUpdateItem = [] +AppKit_NSCollectionViewTransitionLayout = [] AppKit_NSColor = [] AppKit_NSColorList = [] -AppKit_NSColorPanel = [ - "AppKit_NSPanel", -] +AppKit_NSColorPanel = [] AppKit_NSColorPicker = [] -AppKit_NSColorPickerTouchBarItem = [ - "AppKit_NSTouchBarItem", -] +AppKit_NSColorPickerTouchBarItem = [] +AppKit_NSColorPicking = [] AppKit_NSColorSampler = [] AppKit_NSColorSpace = [] -AppKit_NSColorWell = [ - "AppKit_NSControl", -] -AppKit_NSComboBox = [ - "AppKit_NSTextField", -] -AppKit_NSComboBoxCell = [ - "AppKit_NSTextFieldCell", -] -AppKit_NSComboButton = [ - "AppKit_NSControl", -] -AppKit_NSControl = [ - "AppKit_NSView", -] +AppKit_NSColorWell = [] +AppKit_NSComboBox = [] +AppKit_NSComboBoxCell = [] +AppKit_NSComboButton = [] +AppKit_NSControl = [] AppKit_NSController = [] AppKit_NSCursor = [] -AppKit_NSCustomImageRep = [ - "AppKit_NSImageRep", -] -AppKit_NSCustomTouchBarItem = [ - "AppKit_NSTouchBarItem", -] +AppKit_NSCustomImageRep = [] +AppKit_NSCustomTouchBarItem = [] AppKit_NSDataAsset = [] -AppKit_NSDatePicker = [ - "AppKit_NSControl", -] -AppKit_NSDatePickerCell = [ - "AppKit_NSActionCell", -] -AppKit_NSDictionaryController = [ - "AppKit_NSArrayController", -] -AppKit_NSDictionaryControllerKeyValuePair = [] -AppKit_NSDiffableDataSourceSnapshot = [] +AppKit_NSDatePicker = [] +AppKit_NSDatePickerCell = [] +AppKit_NSDictionaryController = [] +AppKit_NSDiffableDataSource = [] AppKit_NSDockTile = [] AppKit_NSDocument = [] AppKit_NSDocumentController = [] -AppKit_NSDraggingImageComponent = [] +AppKit_NSDocumentScripting = [] +AppKit_NSDragging = [] AppKit_NSDraggingItem = [] AppKit_NSDraggingSession = [] -AppKit_NSDrawer = [ - "AppKit_NSResponder", -] -AppKit_NSEPSImageRep = [ - "AppKit_NSImageRep", -] +AppKit_NSDrawer = [] +AppKit_NSEPSImageRep = [] +AppKit_NSErrors = [] AppKit_NSEvent = [] AppKit_NSFilePromiseProvider = [] AppKit_NSFilePromiseReceiver = [] +AppKit_NSFileWrapperExtensions = [] AppKit_NSFont = [] AppKit_NSFontAssetRequest = [] AppKit_NSFontCollection = [] AppKit_NSFontDescriptor = [] AppKit_NSFontManager = [] -AppKit_NSFontPanel = [ - "AppKit_NSPanel", -] -AppKit_NSForm = [ - "AppKit_NSMatrix", -] -AppKit_NSFormCell = [ - "AppKit_NSActionCell", -] +AppKit_NSFontPanel = [] +AppKit_NSForm = [] +AppKit_NSFormCell = [] AppKit_NSGestureRecognizer = [] AppKit_NSGlyphGenerator = [] AppKit_NSGlyphInfo = [] AppKit_NSGradient = [] +AppKit_NSGraphics = [] AppKit_NSGraphicsContext = [] -AppKit_NSGridCell = [] -AppKit_NSGridColumn = [] -AppKit_NSGridRow = [] -AppKit_NSGridView = [ - "AppKit_NSView", -] -AppKit_NSGroupTouchBarItem = [ - "AppKit_NSTouchBarItem", -] -AppKit_NSHapticFeedbackManager = [] +AppKit_NSGridView = [] +AppKit_NSGroupTouchBarItem = [] +AppKit_NSHapticFeedback = [] AppKit_NSHelpManager = [] AppKit_NSImage = [] -AppKit_NSImageCell = [ - "AppKit_NSCell", -] +AppKit_NSImageCell = [] AppKit_NSImageRep = [] -AppKit_NSImageSymbolConfiguration = [] -AppKit_NSImageView = [ - "AppKit_NSControl", -] +AppKit_NSImageView = [] AppKit_NSInputManager = [] AppKit_NSInputServer = [] +AppKit_NSInterfaceStyle = [] +AppKit_NSItemProvider = [] +AppKit_NSKeyValueBinding = [] AppKit_NSLayoutAnchor = [] AppKit_NSLayoutConstraint = [] -AppKit_NSLayoutDimension = [ - "AppKit_NSLayoutAnchor", -] AppKit_NSLayoutGuide = [] AppKit_NSLayoutManager = [] -AppKit_NSLayoutXAxisAnchor = [ - "AppKit_NSLayoutAnchor", -] -AppKit_NSLayoutYAxisAnchor = [ - "AppKit_NSLayoutAnchor", -] -AppKit_NSLevelIndicator = [ - "AppKit_NSControl", -] -AppKit_NSLevelIndicatorCell = [ - "AppKit_NSActionCell", -] -AppKit_NSMagnificationGestureRecognizer = [ - "AppKit_NSGestureRecognizer", -] -AppKit_NSMatrix = [ - "AppKit_NSControl", -] +AppKit_NSLevelIndicator = [] +AppKit_NSLevelIndicatorCell = [] +AppKit_NSMagnificationGestureRecognizer = [] +AppKit_NSMatrix = [] AppKit_NSMediaLibraryBrowserController = [] AppKit_NSMenu = [] AppKit_NSMenuItem = [] AppKit_NSMenuItemBadge = [] -AppKit_NSMenuItemCell = [ - "AppKit_NSButtonCell", -] -AppKit_NSMenuToolbarItem = [ - "AppKit_NSToolbarItem", -] +AppKit_NSMenuItemCell = [] +AppKit_NSMenuToolbarItem = [] AppKit_NSMovie = [] -AppKit_NSMutableFontCollection = [ - "AppKit_NSFontCollection", -] -AppKit_NSMutableParagraphStyle = [ - "AppKit_NSParagraphStyle", -] AppKit_NSNib = [] -AppKit_NSObjectController = [ - "AppKit_NSController", -] -AppKit_NSOpenPanel = [ - "AppKit_NSSavePanel", -] -AppKit_NSOutlineView = [ - "AppKit_NSTableView", -] -AppKit_NSPDFImageRep = [ - "AppKit_NSImageRep", -] +AppKit_NSNibDeclarations = [] +AppKit_NSNibLoading = [] +AppKit_NSObjectController = [] +AppKit_NSOpenGL = [] +AppKit_NSOpenGLLayer = [] +AppKit_NSOpenGLView = [] +AppKit_NSOpenPanel = [] +AppKit_NSOutlineView = [] +AppKit_NSPDFImageRep = [] AppKit_NSPDFInfo = [] AppKit_NSPDFPanel = [] -AppKit_NSPICTImageRep = [ - "AppKit_NSImageRep", -] -AppKit_NSPageController = [ - "AppKit_NSViewController", -] +AppKit_NSPICTImageRep = [] +AppKit_NSPageController = [] AppKit_NSPageLayout = [] -AppKit_NSPanGestureRecognizer = [ - "AppKit_NSGestureRecognizer", -] -AppKit_NSPanel = [ - "AppKit_NSWindow", -] +AppKit_NSPanGestureRecognizer = [] +AppKit_NSPanel = [] AppKit_NSParagraphStyle = [] AppKit_NSPasteboard = [] AppKit_NSPasteboardItem = [] -AppKit_NSPathCell = [ - "AppKit_NSActionCell", -] -AppKit_NSPathComponentCell = [ - "AppKit_NSTextFieldCell", -] -AppKit_NSPathControl = [ - "AppKit_NSControl", -] +AppKit_NSPathCell = [] +AppKit_NSPathComponentCell = [] +AppKit_NSPathControl = [] AppKit_NSPathControlItem = [] -AppKit_NSPersistentDocument = [ - "AppKit_NSDocument", -] -AppKit_NSPickerTouchBarItem = [ - "AppKit_NSTouchBarItem", -] -AppKit_NSPopUpButton = [ - "AppKit_NSButton", -] -AppKit_NSPopUpButtonCell = [ - "AppKit_NSMenuItemCell", -] -AppKit_NSPopover = [ - "AppKit_NSResponder", -] -AppKit_NSPopoverTouchBarItem = [ - "AppKit_NSTouchBarItem", -] -AppKit_NSPredicateEditor = [ - "AppKit_NSRuleEditor", -] +AppKit_NSPersistentDocument = [] +AppKit_NSPickerTouchBarItem = [] +AppKit_NSPopUpButton = [] +AppKit_NSPopUpButtonCell = [] +AppKit_NSPopover = [] +AppKit_NSPopoverTouchBarItem = [] +AppKit_NSPredicateEditor = [] AppKit_NSPredicateEditorRowTemplate = [] -AppKit_NSPressGestureRecognizer = [ - "AppKit_NSGestureRecognizer", -] +AppKit_NSPressGestureRecognizer = [] AppKit_NSPressureConfiguration = [] AppKit_NSPreviewRepresentingActivityItem = [] AppKit_NSPrintInfo = [] AppKit_NSPrintOperation = [] AppKit_NSPrintPanel = [] AppKit_NSPrinter = [] -AppKit_NSProgressIndicator = [ - "AppKit_NSView", -] +AppKit_NSProgressIndicator = [] AppKit_NSResponder = [] -AppKit_NSRotationGestureRecognizer = [ - "AppKit_NSGestureRecognizer", -] -AppKit_NSRuleEditor = [ - "AppKit_NSControl", -] +AppKit_NSRotationGestureRecognizer = [] +AppKit_NSRuleEditor = [] AppKit_NSRulerMarker = [] -AppKit_NSRulerView = [ - "AppKit_NSView", -] +AppKit_NSRulerView = [] AppKit_NSRunningApplication = [] -AppKit_NSSavePanel = [ - "AppKit_NSPanel", -] +AppKit_NSSavePanel = [] AppKit_NSScreen = [] -AppKit_NSScrollView = [ - "AppKit_NSView", -] -AppKit_NSScroller = [ - "AppKit_NSControl", -] -AppKit_NSScrubber = [ - "AppKit_NSView", -] -AppKit_NSScrubberArrangedView = [ - "AppKit_NSView", -] -AppKit_NSScrubberFlowLayout = [ - "AppKit_NSScrubberLayout", -] -AppKit_NSScrubberImageItemView = [ - "AppKit_NSScrubberItemView", -] -AppKit_NSScrubberItemView = [ - "AppKit_NSScrubberArrangedView", -] +AppKit_NSScrollView = [] +AppKit_NSScroller = [] +AppKit_NSScrubber = [] +AppKit_NSScrubberItemView = [] AppKit_NSScrubberLayout = [] -AppKit_NSScrubberLayoutAttributes = [] -AppKit_NSScrubberProportionalLayout = [ - "AppKit_NSScrubberLayout", -] -AppKit_NSScrubberSelectionStyle = [] -AppKit_NSScrubberSelectionView = [ - "AppKit_NSScrubberArrangedView", -] -AppKit_NSScrubberTextItemView = [ - "AppKit_NSScrubberItemView", -] -AppKit_NSSearchField = [ - "AppKit_NSTextField", -] -AppKit_NSSearchFieldCell = [ - "AppKit_NSTextFieldCell", -] -AppKit_NSSearchToolbarItem = [ - "AppKit_NSToolbarItem", -] -AppKit_NSSecureTextField = [ - "AppKit_NSTextField", -] -AppKit_NSSecureTextFieldCell = [ - "AppKit_NSTextFieldCell", -] -AppKit_NSSegmentedCell = [ - "AppKit_NSActionCell", -] -AppKit_NSSegmentedControl = [ - "AppKit_NSControl", -] +AppKit_NSSearchField = [] +AppKit_NSSearchFieldCell = [] +AppKit_NSSearchToolbarItem = [] +AppKit_NSSecureTextField = [] +AppKit_NSSegmentedCell = [] +AppKit_NSSegmentedControl = [] AppKit_NSShadow = [] AppKit_NSSharingService = [] -AppKit_NSSharingServicePicker = [] -AppKit_NSSharingServicePickerToolbarItem = [ - "AppKit_NSToolbarItem", -] -AppKit_NSSharingServicePickerTouchBarItem = [ - "AppKit_NSTouchBarItem", -] -AppKit_NSSlider = [ - "AppKit_NSControl", -] +AppKit_NSSharingServicePickerToolbarItem = [] +AppKit_NSSharingServicePickerTouchBarItem = [] +AppKit_NSSlider = [] AppKit_NSSliderAccessory = [] -AppKit_NSSliderAccessoryBehavior = [] -AppKit_NSSliderCell = [ - "AppKit_NSActionCell", -] -AppKit_NSSliderTouchBarItem = [ - "AppKit_NSTouchBarItem", -] +AppKit_NSSliderCell = [] +AppKit_NSSliderTouchBarItem = [] AppKit_NSSound = [] AppKit_NSSpeechRecognizer = [] AppKit_NSSpeechSynthesizer = [] AppKit_NSSpellChecker = [] -AppKit_NSSplitView = [ - "AppKit_NSView", -] -AppKit_NSSplitViewController = [ - "AppKit_NSViewController", -] +AppKit_NSSpellProtocol = [] +AppKit_NSSplitView = [] +AppKit_NSSplitViewController = [] AppKit_NSSplitViewItem = [] -AppKit_NSStackView = [ - "AppKit_NSView", -] +AppKit_NSStackView = [] AppKit_NSStatusBar = [] -AppKit_NSStatusBarButton = [ - "AppKit_NSButton", -] +AppKit_NSStatusBarButton = [] AppKit_NSStatusItem = [] -AppKit_NSStepper = [ - "AppKit_NSControl", -] -AppKit_NSStepperCell = [ - "AppKit_NSActionCell", -] -AppKit_NSStepperTouchBarItem = [ - "AppKit_NSTouchBarItem", -] +AppKit_NSStepper = [] +AppKit_NSStepperCell = [] +AppKit_NSStepperTouchBarItem = [] AppKit_NSStoryboard = [] AppKit_NSStoryboardSegue = [] -AppKit_NSStringDrawingContext = [] -AppKit_NSSwitch = [ - "AppKit_NSControl", -] -AppKit_NSTabView = [ - "AppKit_NSView", -] -AppKit_NSTabViewController = [ - "AppKit_NSViewController", -] +AppKit_NSStringDrawing = [] +AppKit_NSSwitch = [] +AppKit_NSTabView = [] +AppKit_NSTabViewController = [] AppKit_NSTabViewItem = [] -AppKit_NSTableCellView = [ - "AppKit_NSView", -] +AppKit_NSTableCellView = [] AppKit_NSTableColumn = [] -AppKit_NSTableHeaderCell = [ - "AppKit_NSTextFieldCell", -] -AppKit_NSTableHeaderView = [ - "AppKit_NSView", -] -AppKit_NSTableRowView = [ - "AppKit_NSView", -] -AppKit_NSTableView = [ - "AppKit_NSControl", -] +AppKit_NSTableHeaderCell = [] +AppKit_NSTableHeaderView = [] +AppKit_NSTableRowView = [] +AppKit_NSTableView = [] AppKit_NSTableViewDiffableDataSource = [] AppKit_NSTableViewRowAction = [] -AppKit_NSText = [ - "AppKit_NSView", -] +AppKit_NSText = [] AppKit_NSTextAlternatives = [] AppKit_NSTextAttachment = [] -AppKit_NSTextAttachmentCell = [ - "AppKit_NSCell", -] -AppKit_NSTextAttachmentViewProvider = [] -AppKit_NSTextBlock = [] +AppKit_NSTextAttachmentCell = [] +AppKit_NSTextCheckingClient = [] AppKit_NSTextCheckingController = [] AppKit_NSTextContainer = [] +AppKit_NSTextContent = [] AppKit_NSTextContentManager = [] -AppKit_NSTextContentStorage = [ - "AppKit_NSTextContentManager", -] AppKit_NSTextElement = [] -AppKit_NSTextField = [ - "AppKit_NSControl", -] -AppKit_NSTextFieldCell = [ - "AppKit_NSActionCell", -] +AppKit_NSTextField = [] +AppKit_NSTextFieldCell = [] AppKit_NSTextFinder = [] +AppKit_NSTextInputClient = [] AppKit_NSTextInputContext = [] -AppKit_NSTextInsertionIndicator = [ - "AppKit_NSView", -] +AppKit_NSTextInsertionIndicator = [] AppKit_NSTextLayoutFragment = [] AppKit_NSTextLayoutManager = [] AppKit_NSTextLineFragment = [] AppKit_NSTextList = [] -AppKit_NSTextListElement = [ - "AppKit_NSTextParagraph", -] -AppKit_NSTextParagraph = [ - "AppKit_NSTextElement", -] +AppKit_NSTextListElement = [] AppKit_NSTextRange = [] AppKit_NSTextSelection = [] AppKit_NSTextSelectionNavigation = [] -AppKit_NSTextStorage = [ - "Foundation_NSMutableAttributedString", -] -AppKit_NSTextTab = [] -AppKit_NSTextTable = [ - "AppKit_NSTextBlock", -] -AppKit_NSTextTableBlock = [ - "AppKit_NSTextBlock", -] -AppKit_NSTextView = [ - "AppKit_NSText", -] +AppKit_NSTextStorage = [] +AppKit_NSTextStorageScripting = [] +AppKit_NSTextTable = [] +AppKit_NSTextView = [] AppKit_NSTextViewportLayoutController = [] AppKit_NSTintConfiguration = [] -AppKit_NSTitlebarAccessoryViewController = [ - "AppKit_NSViewController", -] -AppKit_NSTokenField = [ - "AppKit_NSTextField", -] -AppKit_NSTokenFieldCell = [ - "AppKit_NSTextFieldCell", -] +AppKit_NSTitlebarAccessoryViewController = [] +AppKit_NSTokenField = [] +AppKit_NSTokenFieldCell = [] AppKit_NSToolbar = [] AppKit_NSToolbarItem = [] -AppKit_NSToolbarItemGroup = [ - "AppKit_NSToolbarItem", -] +AppKit_NSToolbarItemGroup = [] AppKit_NSTouch = [] AppKit_NSTouchBar = [] AppKit_NSTouchBarItem = [] AppKit_NSTrackingArea = [] -AppKit_NSTrackingSeparatorToolbarItem = [ - "AppKit_NSToolbarItem", -] -AppKit_NSTreeController = [ - "AppKit_NSObjectController", -] +AppKit_NSTrackingSeparatorToolbarItem = [] +AppKit_NSTreeController = [] AppKit_NSTreeNode = [] AppKit_NSTypesetter = [] -AppKit_NSUserDefaultsController = [ - "AppKit_NSController", -] -AppKit_NSUserInterfaceCompressionOptions = [] -AppKit_NSView = [ - "AppKit_NSResponder", -] -AppKit_NSViewAnimation = [ - "AppKit_NSAnimation", -] -AppKit_NSViewController = [ - "AppKit_NSResponder", -] -AppKit_NSVisualEffectView = [ - "AppKit_NSView", -] -AppKit_NSWindow = [ - "AppKit_NSResponder", -] -AppKit_NSWindowController = [ - "AppKit_NSResponder", -] +AppKit_NSUserActivity = [] +AppKit_NSUserDefaultsController = [] +AppKit_NSUserInterfaceCompression = [] +AppKit_NSUserInterfaceItemIdentification = [] +AppKit_NSUserInterfaceItemSearching = [] +AppKit_NSUserInterfaceLayout = [] +AppKit_NSUserInterfaceValidation = [] +AppKit_NSView = [] +AppKit_NSViewController = [] +AppKit_NSVisualEffectView = [] +AppKit_NSWindow = [] +AppKit_NSWindowController = [] +AppKit_NSWindowRestoration = [] +AppKit_NSWindowScripting = [] AppKit_NSWindowTab = [] AppKit_NSWindowTabGroup = [] AppKit_NSWorkspace = [] -AppKit_NSWorkspaceAuthorization = [] -AppKit_NSWorkspaceOpenConfiguration = [] AppKit_all = [ "AppKit", + "AppKit_AppKitDefines", + "AppKit_AppKitErrors", "AppKit_NSATSTypesetter", + "AppKit_NSAccessibility", + "AppKit_NSAccessibilityColor", + "AppKit_NSAccessibilityConstants", "AppKit_NSAccessibilityCustomAction", "AppKit_NSAccessibilityCustomRotor", - "AppKit_NSAccessibilityCustomRotorItemResult", - "AppKit_NSAccessibilityCustomRotorSearchParameters", "AppKit_NSAccessibilityElement", + "AppKit_NSAccessibilityProtocols", "AppKit_NSActionCell", + "AppKit_NSAffineTransform", "AppKit_NSAlert", "AppKit_NSAlignmentFeedbackFilter", "AppKit_NSAnimation", "AppKit_NSAnimationContext", "AppKit_NSAppearance", + "AppKit_NSAppleScriptExtensions", "AppKit_NSApplication", + "AppKit_NSApplicationScripting", "AppKit_NSArrayController", + "AppKit_NSAttributedString", "AppKit_NSBezierPath", - "AppKit_NSBindingSelectionMarker", "AppKit_NSBitmapImageRep", "AppKit_NSBox", "AppKit_NSBrowser", @@ -855,41 +577,24 @@ AppKit_all = [ "AppKit_NSButton", "AppKit_NSButtonCell", "AppKit_NSButtonTouchBarItem", + "AppKit_NSCIImageRep", "AppKit_NSCachedImageRep", "AppKit_NSCandidateListTouchBarItem", "AppKit_NSCell", "AppKit_NSClickGestureRecognizer", "AppKit_NSClipView", - "AppKit_NSCollectionLayoutAnchor", - "AppKit_NSCollectionLayoutBoundarySupplementaryItem", - "AppKit_NSCollectionLayoutDecorationItem", - "AppKit_NSCollectionLayoutDimension", - "AppKit_NSCollectionLayoutEdgeSpacing", - "AppKit_NSCollectionLayoutGroup", - "AppKit_NSCollectionLayoutGroupCustomItem", - "AppKit_NSCollectionLayoutItem", - "AppKit_NSCollectionLayoutSection", - "AppKit_NSCollectionLayoutSize", - "AppKit_NSCollectionLayoutSpacing", - "AppKit_NSCollectionLayoutSupplementaryItem", "AppKit_NSCollectionView", "AppKit_NSCollectionViewCompositionalLayout", - "AppKit_NSCollectionViewCompositionalLayoutConfiguration", - "AppKit_NSCollectionViewDiffableDataSource", "AppKit_NSCollectionViewFlowLayout", - "AppKit_NSCollectionViewFlowLayoutInvalidationContext", "AppKit_NSCollectionViewGridLayout", - "AppKit_NSCollectionViewItem", "AppKit_NSCollectionViewLayout", - "AppKit_NSCollectionViewLayoutAttributes", - "AppKit_NSCollectionViewLayoutInvalidationContext", "AppKit_NSCollectionViewTransitionLayout", - "AppKit_NSCollectionViewUpdateItem", "AppKit_NSColor", "AppKit_NSColorList", "AppKit_NSColorPanel", "AppKit_NSColorPicker", "AppKit_NSColorPickerTouchBarItem", + "AppKit_NSColorPicking", "AppKit_NSColorSampler", "AppKit_NSColorSpace", "AppKit_NSColorWell", @@ -905,19 +610,21 @@ AppKit_all = [ "AppKit_NSDatePicker", "AppKit_NSDatePickerCell", "AppKit_NSDictionaryController", - "AppKit_NSDictionaryControllerKeyValuePair", - "AppKit_NSDiffableDataSourceSnapshot", + "AppKit_NSDiffableDataSource", "AppKit_NSDockTile", "AppKit_NSDocument", "AppKit_NSDocumentController", - "AppKit_NSDraggingImageComponent", + "AppKit_NSDocumentScripting", + "AppKit_NSDragging", "AppKit_NSDraggingItem", "AppKit_NSDraggingSession", "AppKit_NSDrawer", "AppKit_NSEPSImageRep", + "AppKit_NSErrors", "AppKit_NSEvent", "AppKit_NSFilePromiseProvider", "AppKit_NSFilePromiseReceiver", + "AppKit_NSFileWrapperExtensions", "AppKit_NSFont", "AppKit_NSFontAssetRequest", "AppKit_NSFontCollection", @@ -930,28 +637,25 @@ AppKit_all = [ "AppKit_NSGlyphGenerator", "AppKit_NSGlyphInfo", "AppKit_NSGradient", + "AppKit_NSGraphics", "AppKit_NSGraphicsContext", - "AppKit_NSGridCell", - "AppKit_NSGridColumn", - "AppKit_NSGridRow", "AppKit_NSGridView", "AppKit_NSGroupTouchBarItem", - "AppKit_NSHapticFeedbackManager", + "AppKit_NSHapticFeedback", "AppKit_NSHelpManager", "AppKit_NSImage", "AppKit_NSImageCell", "AppKit_NSImageRep", - "AppKit_NSImageSymbolConfiguration", "AppKit_NSImageView", "AppKit_NSInputManager", "AppKit_NSInputServer", + "AppKit_NSInterfaceStyle", + "AppKit_NSItemProvider", + "AppKit_NSKeyValueBinding", "AppKit_NSLayoutAnchor", "AppKit_NSLayoutConstraint", - "AppKit_NSLayoutDimension", "AppKit_NSLayoutGuide", "AppKit_NSLayoutManager", - "AppKit_NSLayoutXAxisAnchor", - "AppKit_NSLayoutYAxisAnchor", "AppKit_NSLevelIndicator", "AppKit_NSLevelIndicatorCell", "AppKit_NSMagnificationGestureRecognizer", @@ -963,10 +667,13 @@ AppKit_all = [ "AppKit_NSMenuItemCell", "AppKit_NSMenuToolbarItem", "AppKit_NSMovie", - "AppKit_NSMutableFontCollection", - "AppKit_NSMutableParagraphStyle", "AppKit_NSNib", + "AppKit_NSNibDeclarations", + "AppKit_NSNibLoading", "AppKit_NSObjectController", + "AppKit_NSOpenGL", + "AppKit_NSOpenGLLayer", + "AppKit_NSOpenGLView", "AppKit_NSOpenPanel", "AppKit_NSOutlineView", "AppKit_NSPDFImageRep", @@ -1011,37 +718,27 @@ AppKit_all = [ "AppKit_NSScrollView", "AppKit_NSScroller", "AppKit_NSScrubber", - "AppKit_NSScrubberArrangedView", - "AppKit_NSScrubberFlowLayout", - "AppKit_NSScrubberImageItemView", "AppKit_NSScrubberItemView", "AppKit_NSScrubberLayout", - "AppKit_NSScrubberLayoutAttributes", - "AppKit_NSScrubberProportionalLayout", - "AppKit_NSScrubberSelectionStyle", - "AppKit_NSScrubberSelectionView", - "AppKit_NSScrubberTextItemView", "AppKit_NSSearchField", "AppKit_NSSearchFieldCell", "AppKit_NSSearchToolbarItem", "AppKit_NSSecureTextField", - "AppKit_NSSecureTextFieldCell", "AppKit_NSSegmentedCell", "AppKit_NSSegmentedControl", "AppKit_NSShadow", "AppKit_NSSharingService", - "AppKit_NSSharingServicePicker", "AppKit_NSSharingServicePickerToolbarItem", "AppKit_NSSharingServicePickerTouchBarItem", "AppKit_NSSlider", "AppKit_NSSliderAccessory", - "AppKit_NSSliderAccessoryBehavior", "AppKit_NSSliderCell", "AppKit_NSSliderTouchBarItem", "AppKit_NSSound", "AppKit_NSSpeechRecognizer", "AppKit_NSSpeechSynthesizer", "AppKit_NSSpellChecker", + "AppKit_NSSpellProtocol", "AppKit_NSSplitView", "AppKit_NSSplitViewController", "AppKit_NSSplitViewItem", @@ -1054,7 +751,7 @@ AppKit_all = [ "AppKit_NSStepperTouchBarItem", "AppKit_NSStoryboard", "AppKit_NSStoryboardSegue", - "AppKit_NSStringDrawingContext", + "AppKit_NSStringDrawing", "AppKit_NSSwitch", "AppKit_NSTabView", "AppKit_NSTabViewController", @@ -1071,16 +768,16 @@ AppKit_all = [ "AppKit_NSTextAlternatives", "AppKit_NSTextAttachment", "AppKit_NSTextAttachmentCell", - "AppKit_NSTextAttachmentViewProvider", - "AppKit_NSTextBlock", + "AppKit_NSTextCheckingClient", "AppKit_NSTextCheckingController", "AppKit_NSTextContainer", + "AppKit_NSTextContent", "AppKit_NSTextContentManager", - "AppKit_NSTextContentStorage", "AppKit_NSTextElement", "AppKit_NSTextField", "AppKit_NSTextFieldCell", "AppKit_NSTextFinder", + "AppKit_NSTextInputClient", "AppKit_NSTextInputContext", "AppKit_NSTextInsertionIndicator", "AppKit_NSTextLayoutFragment", @@ -1088,14 +785,12 @@ AppKit_all = [ "AppKit_NSTextLineFragment", "AppKit_NSTextList", "AppKit_NSTextListElement", - "AppKit_NSTextParagraph", "AppKit_NSTextRange", "AppKit_NSTextSelection", "AppKit_NSTextSelectionNavigation", "AppKit_NSTextStorage", - "AppKit_NSTextTab", + "AppKit_NSTextStorageScripting", "AppKit_NSTextTable", - "AppKit_NSTextTableBlock", "AppKit_NSTextView", "AppKit_NSTextViewportLayoutController", "AppKit_NSTintConfiguration", @@ -1113,103 +808,96 @@ AppKit_all = [ "AppKit_NSTreeController", "AppKit_NSTreeNode", "AppKit_NSTypesetter", + "AppKit_NSUserActivity", "AppKit_NSUserDefaultsController", - "AppKit_NSUserInterfaceCompressionOptions", + "AppKit_NSUserInterfaceCompression", + "AppKit_NSUserInterfaceItemIdentification", + "AppKit_NSUserInterfaceItemSearching", + "AppKit_NSUserInterfaceLayout", + "AppKit_NSUserInterfaceValidation", "AppKit_NSView", - "AppKit_NSViewAnimation", "AppKit_NSViewController", "AppKit_NSVisualEffectView", "AppKit_NSWindow", "AppKit_NSWindowController", + "AppKit_NSWindowRestoration", + "AppKit_NSWindowScripting", "AppKit_NSWindowTab", "AppKit_NSWindowTabGroup", "AppKit_NSWorkspace", - "AppKit_NSWorkspaceAuthorization", - "AppKit_NSWorkspaceOpenConfiguration", ] AuthenticationServices = [ "AppKit", "Foundation", ] AuthenticationServices_ASAccountAuthenticationModificationController = [] -AuthenticationServices_ASAccountAuthenticationModificationExtensionContext = [ - "Foundation_NSExtensionContext", -] -AuthenticationServices_ASAccountAuthenticationModificationReplacePasswordWithSignInWithAppleRequest = [ - "AuthenticationServices_ASAccountAuthenticationModificationRequest", -] +AuthenticationServices_ASAccountAuthenticationModificationExtensionContext = [] +AuthenticationServices_ASAccountAuthenticationModificationReplacePasswordWithSignInWithAppleRequest = [] AuthenticationServices_ASAccountAuthenticationModificationRequest = [] -AuthenticationServices_ASAccountAuthenticationModificationUpgradePasswordToStrongPasswordRequest = [ - "AuthenticationServices_ASAccountAuthenticationModificationRequest", -] -AuthenticationServices_ASAccountAuthenticationModificationViewController = [ - "AppKit_NSViewController", -] +AuthenticationServices_ASAccountAuthenticationModificationUpgradePasswordToStrongPasswordRequest = [] +AuthenticationServices_ASAccountAuthenticationModificationViewController = [] AuthenticationServices_ASAuthorization = [] -AuthenticationServices_ASAuthorizationAppleIDButton = [ - "AppKit_NSControl", -] +AuthenticationServices_ASAuthorizationAppleIDButton = [] AuthenticationServices_ASAuthorizationAppleIDCredential = [] AuthenticationServices_ASAuthorizationAppleIDProvider = [] -AuthenticationServices_ASAuthorizationAppleIDRequest = [ - "AuthenticationServices_ASAuthorizationOpenIDRequest", -] +AuthenticationServices_ASAuthorizationAppleIDRequest = [] AuthenticationServices_ASAuthorizationController = [] -AuthenticationServices_ASAuthorizationOpenIDRequest = [ - "AuthenticationServices_ASAuthorizationRequest", -] +AuthenticationServices_ASAuthorizationCredential = [] +AuthenticationServices_ASAuthorizationCustomMethod = [] +AuthenticationServices_ASAuthorizationError = [] +AuthenticationServices_ASAuthorizationOpenIDRequest = [] AuthenticationServices_ASAuthorizationPasswordProvider = [] -AuthenticationServices_ASAuthorizationPasswordRequest = [ - "AuthenticationServices_ASAuthorizationRequest", -] +AuthenticationServices_ASAuthorizationPasswordRequest = [] AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialAssertion = [] -AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialAssertionRequest = [ - "AuthenticationServices_ASAuthorizationRequest", -] +AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialAssertionRequest = [] AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialDescriptor = [] AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialProvider = [] AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialRegistration = [] -AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest = [ - "AuthenticationServices_ASAuthorizationRequest", -] +AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest = [] +AuthenticationServices_ASAuthorizationProvider = [] AuthenticationServices_ASAuthorizationProviderExtensionAuthorizationRequest = [] AuthenticationServices_ASAuthorizationProviderExtensionAuthorizationResult = [] -AuthenticationServices_ASAuthorizationProviderExtensionKerberosMapping = [] AuthenticationServices_ASAuthorizationProviderExtensionLoginConfiguration = [] AuthenticationServices_ASAuthorizationProviderExtensionLoginManager = [] +AuthenticationServices_ASAuthorizationProviderExtensionRegistrationHandler = [] AuthenticationServices_ASAuthorizationProviderExtensionUserLoginConfiguration = [] +AuthenticationServices_ASAuthorizationPublicKeyCredentialAssertion = [] +AuthenticationServices_ASAuthorizationPublicKeyCredentialAssertionRequest = [] +AuthenticationServices_ASAuthorizationPublicKeyCredentialConstants = [] +AuthenticationServices_ASAuthorizationPublicKeyCredentialDescriptor = [] AuthenticationServices_ASAuthorizationPublicKeyCredentialLargeBlobAssertionInput = [] AuthenticationServices_ASAuthorizationPublicKeyCredentialLargeBlobAssertionOutput = [] AuthenticationServices_ASAuthorizationPublicKeyCredentialLargeBlobRegistrationInput = [] AuthenticationServices_ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput = [] AuthenticationServices_ASAuthorizationPublicKeyCredentialParameters = [] +AuthenticationServices_ASAuthorizationPublicKeyCredentialRegistration = [] +AuthenticationServices_ASAuthorizationPublicKeyCredentialRegistrationRequest = [] AuthenticationServices_ASAuthorizationRequest = [] AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialAssertion = [] -AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest = [ - "AuthenticationServices_ASAuthorizationRequest", -] +AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest = [] AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor = [] AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialProvider = [] AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialRegistration = [] -AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest = [ - "AuthenticationServices_ASAuthorizationRequest", -] +AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest = [] AuthenticationServices_ASAuthorizationSingleSignOnCredential = [] AuthenticationServices_ASAuthorizationSingleSignOnProvider = [] -AuthenticationServices_ASAuthorizationSingleSignOnRequest = [ - "AuthenticationServices_ASAuthorizationOpenIDRequest", -] +AuthenticationServices_ASAuthorizationSingleSignOnRequest = [] +AuthenticationServices_ASAuthorizationWebBrowserExternallyAuthenticatableRequest = [] AuthenticationServices_ASAuthorizationWebBrowserPlatformPublicKeyCredential = [] +AuthenticationServices_ASAuthorizationWebBrowserPlatformPublicKeyCredentialAssertionRequest = [] +AuthenticationServices_ASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider = [] +AuthenticationServices_ASAuthorizationWebBrowserPlatformPublicKeyCredentialRegistrationRequest = [] AuthenticationServices_ASAuthorizationWebBrowserPublicKeyCredentialManager = [] +AuthenticationServices_ASCOSEConstants = [] +AuthenticationServices_ASCredentialIdentity = [] AuthenticationServices_ASCredentialIdentityStore = [] AuthenticationServices_ASCredentialIdentityStoreState = [] -AuthenticationServices_ASCredentialProviderExtensionContext = [ - "Foundation_NSExtensionContext", -] -AuthenticationServices_ASCredentialProviderViewController = [ - "AppKit_NSViewController", -] +AuthenticationServices_ASCredentialProviderExtensionContext = [] +AuthenticationServices_ASCredentialProviderViewController = [] +AuthenticationServices_ASCredentialRequest = [] AuthenticationServices_ASCredentialServiceIdentifier = [] +AuthenticationServices_ASExtensionErrors = [] +AuthenticationServices_ASFoundation = [] AuthenticationServices_ASPasskeyAssertionCredential = [] AuthenticationServices_ASPasskeyCredentialIdentity = [] AuthenticationServices_ASPasskeyCredentialRequest = [] @@ -1218,10 +906,12 @@ AuthenticationServices_ASPasskeyRegistrationCredential = [] AuthenticationServices_ASPasswordCredential = [] AuthenticationServices_ASPasswordCredentialIdentity = [] AuthenticationServices_ASPasswordCredentialRequest = [] +AuthenticationServices_ASPublicKeyCredential = [] AuthenticationServices_ASPublicKeyCredentialClientData = [] AuthenticationServices_ASSettingsHelper = [] AuthenticationServices_ASWebAuthenticationSession = [] AuthenticationServices_ASWebAuthenticationSessionRequest = [] +AuthenticationServices_ASWebAuthenticationSessionWebBrowserSessionHandling = [] AuthenticationServices_ASWebAuthenticationSessionWebBrowserSessionManager = [] AuthenticationServices_all = [ "AuthenticationServices", @@ -1237,6 +927,9 @@ AuthenticationServices_all = [ "AuthenticationServices_ASAuthorizationAppleIDProvider", "AuthenticationServices_ASAuthorizationAppleIDRequest", "AuthenticationServices_ASAuthorizationController", + "AuthenticationServices_ASAuthorizationCredential", + "AuthenticationServices_ASAuthorizationCustomMethod", + "AuthenticationServices_ASAuthorizationError", "AuthenticationServices_ASAuthorizationOpenIDRequest", "AuthenticationServices_ASAuthorizationPasswordProvider", "AuthenticationServices_ASAuthorizationPasswordRequest", @@ -1246,17 +939,24 @@ AuthenticationServices_all = [ "AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialProvider", "AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialRegistration", "AuthenticationServices_ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest", + "AuthenticationServices_ASAuthorizationProvider", "AuthenticationServices_ASAuthorizationProviderExtensionAuthorizationRequest", "AuthenticationServices_ASAuthorizationProviderExtensionAuthorizationResult", - "AuthenticationServices_ASAuthorizationProviderExtensionKerberosMapping", "AuthenticationServices_ASAuthorizationProviderExtensionLoginConfiguration", "AuthenticationServices_ASAuthorizationProviderExtensionLoginManager", + "AuthenticationServices_ASAuthorizationProviderExtensionRegistrationHandler", "AuthenticationServices_ASAuthorizationProviderExtensionUserLoginConfiguration", + "AuthenticationServices_ASAuthorizationPublicKeyCredentialAssertion", + "AuthenticationServices_ASAuthorizationPublicKeyCredentialAssertionRequest", + "AuthenticationServices_ASAuthorizationPublicKeyCredentialConstants", + "AuthenticationServices_ASAuthorizationPublicKeyCredentialDescriptor", "AuthenticationServices_ASAuthorizationPublicKeyCredentialLargeBlobAssertionInput", "AuthenticationServices_ASAuthorizationPublicKeyCredentialLargeBlobAssertionOutput", "AuthenticationServices_ASAuthorizationPublicKeyCredentialLargeBlobRegistrationInput", "AuthenticationServices_ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput", "AuthenticationServices_ASAuthorizationPublicKeyCredentialParameters", + "AuthenticationServices_ASAuthorizationPublicKeyCredentialRegistration", + "AuthenticationServices_ASAuthorizationPublicKeyCredentialRegistrationRequest", "AuthenticationServices_ASAuthorizationRequest", "AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialAssertion", "AuthenticationServices_ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest", @@ -1267,13 +967,22 @@ AuthenticationServices_all = [ "AuthenticationServices_ASAuthorizationSingleSignOnCredential", "AuthenticationServices_ASAuthorizationSingleSignOnProvider", "AuthenticationServices_ASAuthorizationSingleSignOnRequest", + "AuthenticationServices_ASAuthorizationWebBrowserExternallyAuthenticatableRequest", "AuthenticationServices_ASAuthorizationWebBrowserPlatformPublicKeyCredential", + "AuthenticationServices_ASAuthorizationWebBrowserPlatformPublicKeyCredentialAssertionRequest", + "AuthenticationServices_ASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider", + "AuthenticationServices_ASAuthorizationWebBrowserPlatformPublicKeyCredentialRegistrationRequest", "AuthenticationServices_ASAuthorizationWebBrowserPublicKeyCredentialManager", + "AuthenticationServices_ASCOSEConstants", + "AuthenticationServices_ASCredentialIdentity", "AuthenticationServices_ASCredentialIdentityStore", "AuthenticationServices_ASCredentialIdentityStoreState", "AuthenticationServices_ASCredentialProviderExtensionContext", "AuthenticationServices_ASCredentialProviderViewController", + "AuthenticationServices_ASCredentialRequest", "AuthenticationServices_ASCredentialServiceIdentifier", + "AuthenticationServices_ASExtensionErrors", + "AuthenticationServices_ASFoundation", "AuthenticationServices_ASPasskeyAssertionCredential", "AuthenticationServices_ASPasskeyCredentialIdentity", "AuthenticationServices_ASPasskeyCredentialRequest", @@ -1282,10 +991,12 @@ AuthenticationServices_all = [ "AuthenticationServices_ASPasswordCredential", "AuthenticationServices_ASPasswordCredentialIdentity", "AuthenticationServices_ASPasswordCredentialRequest", + "AuthenticationServices_ASPublicKeyCredential", "AuthenticationServices_ASPublicKeyCredentialClientData", "AuthenticationServices_ASSettingsHelper", "AuthenticationServices_ASWebAuthenticationSession", "AuthenticationServices_ASWebAuthenticationSessionRequest", + "AuthenticationServices_ASWebAuthenticationSessionWebBrowserSessionHandling", "AuthenticationServices_ASWebAuthenticationSessionWebBrowserSessionManager", ] AutomaticAssessmentConfiguration = [ @@ -1295,12 +1006,18 @@ AutomaticAssessmentConfiguration_AEAssessmentApplication = [] AutomaticAssessmentConfiguration_AEAssessmentConfiguration = [] AutomaticAssessmentConfiguration_AEAssessmentParticipantConfiguration = [] AutomaticAssessmentConfiguration_AEAssessmentSession = [] +AutomaticAssessmentConfiguration_AEAssessmentSessionDelegate = [] +AutomaticAssessmentConfiguration_AEErrors = [] +AutomaticAssessmentConfiguration_AEVisibility = [] AutomaticAssessmentConfiguration_all = [ "AutomaticAssessmentConfiguration", "AutomaticAssessmentConfiguration_AEAssessmentApplication", "AutomaticAssessmentConfiguration_AEAssessmentConfiguration", "AutomaticAssessmentConfiguration_AEAssessmentParticipantConfiguration", "AutomaticAssessmentConfiguration_AEAssessmentSession", + "AutomaticAssessmentConfiguration_AEAssessmentSessionDelegate", + "AutomaticAssessmentConfiguration_AEErrors", + "AutomaticAssessmentConfiguration_AEVisibility", ] Automator = [ "AppKit", @@ -1308,82 +1025,60 @@ Automator = [ "OSAKit", ] Automator_AMAction = [] -Automator_AMAppleScriptAction = [ - "Automator_AMBundleAction", -] -Automator_AMBundleAction = [ - "Automator_AMAction", -] -Automator_AMShellScriptAction = [ - "Automator_AMBundleAction", -] +Automator_AMAppleScriptAction = [] +Automator_AMAttributesForAnalyzer = [] +Automator_AMBundleAction = [] +Automator_AMShellScriptAction = [] Automator_AMWorkflow = [] -Automator_AMWorkflowController = [ - "AppKit_NSController", -] -Automator_AMWorkflowView = [ - "AppKit_NSView", -] +Automator_AMWorkflowController = [] +Automator_AMWorkflowView = [] Automator_AMWorkspace = [] +Automator_AutomatorErrors = [] Automator_all = [ "Automator", "Automator_AMAction", "Automator_AMAppleScriptAction", + "Automator_AMAttributesForAnalyzer", "Automator_AMBundleAction", "Automator_AMShellScriptAction", "Automator_AMWorkflow", "Automator_AMWorkflowController", "Automator_AMWorkflowView", "Automator_AMWorkspace", + "Automator_AutomatorErrors", ] BackgroundAssets = [ "Foundation", ] BackgroundAssets_BAAppExtensionInfo = [] +BackgroundAssets_BABase = [] BackgroundAssets_BADownload = [] BackgroundAssets_BADownloadManager = [] -BackgroundAssets_BAURLDownload = [ - "BackgroundAssets_BADownload", -] +BackgroundAssets_BADownloaderExtension = [] +BackgroundAssets_BAError = [] +BackgroundAssets_BATypes = [] +BackgroundAssets_BAURLDownload = [] BackgroundAssets_all = [ "BackgroundAssets", "BackgroundAssets_BAAppExtensionInfo", + "BackgroundAssets_BABase", "BackgroundAssets_BADownload", "BackgroundAssets_BADownloadManager", + "BackgroundAssets_BADownloaderExtension", + "BackgroundAssets_BAError", + "BackgroundAssets_BATypes", "BackgroundAssets_BAURLDownload", ] BackgroundTasks = [ "Foundation", ] -BackgroundTasks_BGAppRefreshTask = [ - "BackgroundTasks_BGTask", -] -BackgroundTasks_BGAppRefreshTaskRequest = [ - "BackgroundTasks_BGTaskRequest", -] -BackgroundTasks_BGHealthResearchTask = [ - "BackgroundTasks_BGProcessingTask", -] -BackgroundTasks_BGHealthResearchTaskRequest = [ - "BackgroundTasks_BGProcessingTaskRequest", -] -BackgroundTasks_BGProcessingTask = [ - "BackgroundTasks_BGTask", -] -BackgroundTasks_BGProcessingTaskRequest = [ - "BackgroundTasks_BGTaskRequest", -] +BackgroundTasks_BGDefines = [] BackgroundTasks_BGTask = [] BackgroundTasks_BGTaskRequest = [] BackgroundTasks_BGTaskScheduler = [] BackgroundTasks_all = [ "BackgroundTasks", - "BackgroundTasks_BGAppRefreshTask", - "BackgroundTasks_BGAppRefreshTaskRequest", - "BackgroundTasks_BGHealthResearchTask", - "BackgroundTasks_BGHealthResearchTaskRequest", - "BackgroundTasks_BGProcessingTask", - "BackgroundTasks_BGProcessingTaskRequest", + "BackgroundTasks_BGDefines", "BackgroundTasks_BGTask", "BackgroundTasks_BGTaskRequest", "BackgroundTasks_BGTaskScheduler", @@ -1393,9 +1088,7 @@ BusinessChat = [ "Foundation", ] BusinessChat_BCChatAction = [] -BusinessChat_BCChatButton = [ - "AppKit_NSControl", -] +BusinessChat_BCChatButton = [] BusinessChat_all = [ "BusinessChat", "BusinessChat_BCChatAction", @@ -1405,56 +1098,44 @@ CallKit = [ "Foundation", ] CallKit_CXAction = [] -CallKit_CXAnswerCallAction = [ - "CallKit_CXCallAction", -] +CallKit_CXAnswerCallAction = [] +CallKit_CXBase = [] CallKit_CXCall = [] -CallKit_CXCallAction = [ - "CallKit_CXAction", -] +CallKit_CXCallAction = [] CallKit_CXCallController = [] -CallKit_CXCallDirectoryExtensionContext = [ - "Foundation_NSExtensionContext", -] +CallKit_CXCallDirectory = [] +CallKit_CXCallDirectoryExtensionContext = [] CallKit_CXCallDirectoryManager = [] CallKit_CXCallDirectoryProvider = [] CallKit_CXCallObserver = [] CallKit_CXCallUpdate = [] -CallKit_CXEndCallAction = [ - "CallKit_CXCallAction", -] +CallKit_CXEndCallAction = [] +CallKit_CXError = [] CallKit_CXHandle = [] -CallKit_CXPlayDTMFCallAction = [ - "CallKit_CXCallAction", -] +CallKit_CXPlayDTMFCallAction = [] CallKit_CXProvider = [] CallKit_CXProviderConfiguration = [] -CallKit_CXSetGroupCallAction = [ - "CallKit_CXCallAction", -] -CallKit_CXSetHeldCallAction = [ - "CallKit_CXCallAction", -] -CallKit_CXSetMutedCallAction = [ - "CallKit_CXCallAction", -] -CallKit_CXStartCallAction = [ - "CallKit_CXCallAction", -] +CallKit_CXSetGroupCallAction = [] +CallKit_CXSetHeldCallAction = [] +CallKit_CXSetMutedCallAction = [] +CallKit_CXStartCallAction = [] CallKit_CXTransaction = [] CallKit_all = [ "CallKit", "CallKit_CXAction", "CallKit_CXAnswerCallAction", + "CallKit_CXBase", "CallKit_CXCall", "CallKit_CXCallAction", "CallKit_CXCallController", + "CallKit_CXCallDirectory", "CallKit_CXCallDirectoryExtensionContext", "CallKit_CXCallDirectoryManager", "CallKit_CXCallDirectoryProvider", "CallKit_CXCallObserver", "CallKit_CXCallUpdate", "CallKit_CXEndCallAction", + "CallKit_CXError", "CallKit_CXHandle", "CallKit_CXPlayDTMFCallAction", "CallKit_CXProvider", @@ -1468,217 +1149,87 @@ CallKit_all = [ ClassKit = [ "Foundation", ] -ClassKit_CLSActivity = [ - "ClassKit_CLSObject", -] -ClassKit_CLSActivityItem = [ - "ClassKit_CLSObject", -] -ClassKit_CLSBinaryItem = [ - "ClassKit_CLSActivityItem", -] -ClassKit_CLSContext = [ - "ClassKit_CLSObject", -] +ClassKit_CLSActivity = [] +ClassKit_CLSActivityItem = [] +ClassKit_CLSBinaryItem = [] +ClassKit_CLSContext = [] +ClassKit_CLSContextProvider = [] ClassKit_CLSDataStore = [] +ClassKit_CLSDefines = [] ClassKit_CLSObject = [] -ClassKit_CLSProgressReportingCapability = [ - "ClassKit_CLSObject", -] -ClassKit_CLSQuantityItem = [ - "ClassKit_CLSActivityItem", -] -ClassKit_CLSScoreItem = [ - "ClassKit_CLSActivityItem", -] +ClassKit_CLSProgressReportingCapability = [] +ClassKit_CLSQuantityItem = [] +ClassKit_CLSScoreItem = [] +ClassKit_NSUserActivity_CLSDeepLinks = [] ClassKit_all = [ "ClassKit", "ClassKit_CLSActivity", "ClassKit_CLSActivityItem", "ClassKit_CLSBinaryItem", "ClassKit_CLSContext", + "ClassKit_CLSContextProvider", "ClassKit_CLSDataStore", + "ClassKit_CLSDefines", "ClassKit_CLSObject", "ClassKit_CLSProgressReportingCapability", "ClassKit_CLSQuantityItem", "ClassKit_CLSScoreItem", + "ClassKit_NSUserActivity_CLSDeepLinks", ] CloudKit = [ "CoreLocation", "Foundation", ] -CloudKit_CKAcceptSharesOperation = [ - "CloudKit_CKOperation", -] +CloudKit_CKAcceptSharesOperation = [] CloudKit_CKAllowedSharingOptions = [] CloudKit_CKAsset = [] CloudKit_CKContainer = [] CloudKit_CKDatabase = [] -CloudKit_CKDatabaseNotification = [ - "CloudKit_CKNotification", -] -CloudKit_CKDatabaseOperation = [ - "CloudKit_CKOperation", -] -CloudKit_CKDatabaseSubscription = [ - "CloudKit_CKSubscription", -] -CloudKit_CKDiscoverAllUserIdentitiesOperation = [ - "CloudKit_CKOperation", -] -CloudKit_CKDiscoverUserIdentitiesOperation = [ - "CloudKit_CKOperation", -] -CloudKit_CKFetchDatabaseChangesOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKFetchNotificationChangesOperation = [ - "CloudKit_CKOperation", -] -CloudKit_CKFetchRecordChangesOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKFetchRecordZoneChangesConfiguration = [] -CloudKit_CKFetchRecordZoneChangesOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKFetchRecordZoneChangesOptions = [] -CloudKit_CKFetchRecordZonesOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKFetchRecordsOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKFetchShareMetadataOperation = [ - "CloudKit_CKOperation", -] -CloudKit_CKFetchShareParticipantsOperation = [ - "CloudKit_CKOperation", -] -CloudKit_CKFetchSubscriptionsOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKFetchWebAuthTokenOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKLocationSortDescriptor = [ - "Foundation_NSSortDescriptor", -] -CloudKit_CKMarkNotificationsReadOperation = [ - "CloudKit_CKOperation", -] -CloudKit_CKModifyBadgeOperation = [ - "CloudKit_CKOperation", -] -CloudKit_CKModifyRecordZonesOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKModifyRecordsOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKModifySubscriptionsOperation = [ - "CloudKit_CKDatabaseOperation", -] +CloudKit_CKDatabaseOperation = [] +CloudKit_CKDefines = [] +CloudKit_CKDiscoverAllUserIdentitiesOperation = [] +CloudKit_CKDiscoverUserIdentitiesOperation = [] +CloudKit_CKError = [] +CloudKit_CKFetchDatabaseChangesOperation = [] +CloudKit_CKFetchNotificationChangesOperation = [] +CloudKit_CKFetchRecordChangesOperation = [] +CloudKit_CKFetchRecordZoneChangesOperation = [] +CloudKit_CKFetchRecordZonesOperation = [] +CloudKit_CKFetchRecordsOperation = [] +CloudKit_CKFetchShareMetadataOperation = [] +CloudKit_CKFetchShareParticipantsOperation = [] +CloudKit_CKFetchSubscriptionsOperation = [] +CloudKit_CKFetchWebAuthTokenOperation = [] +CloudKit_CKLocationSortDescriptor = [] +CloudKit_CKMarkNotificationsReadOperation = [] +CloudKit_CKModifyBadgeOperation = [] +CloudKit_CKModifyRecordZonesOperation = [] +CloudKit_CKModifyRecordsOperation = [] +CloudKit_CKModifySubscriptionsOperation = [] CloudKit_CKNotification = [] -CloudKit_CKNotificationID = [] -CloudKit_CKNotificationInfo = [] -CloudKit_CKOperation = [ - "Foundation_NSOperation", -] -CloudKit_CKOperationConfiguration = [] +CloudKit_CKOperation = [] CloudKit_CKOperationGroup = [] CloudKit_CKQuery = [] -CloudKit_CKQueryCursor = [] -CloudKit_CKQueryNotification = [ - "CloudKit_CKNotification", -] -CloudKit_CKQueryOperation = [ - "CloudKit_CKDatabaseOperation", -] -CloudKit_CKQuerySubscription = [ - "CloudKit_CKSubscription", -] +CloudKit_CKQueryOperation = [] CloudKit_CKRecord = [] CloudKit_CKRecordID = [] CloudKit_CKRecordZone = [] CloudKit_CKRecordZoneID = [] -CloudKit_CKRecordZoneNotification = [ - "CloudKit_CKNotification", -] -CloudKit_CKRecordZoneSubscription = [ - "CloudKit_CKSubscription", -] CloudKit_CKReference = [] CloudKit_CKServerChangeToken = [] -CloudKit_CKShare = [ - "CloudKit_CKRecord", -] +CloudKit_CKShare = [] CloudKit_CKShareMetadata = [] CloudKit_CKShareParticipant = [] CloudKit_CKSubscription = [] CloudKit_CKSyncEngine = [] -CloudKit_CKSyncEngineAccountChangeEvent = [ - "CloudKit_CKSyncEngineEvent", -] CloudKit_CKSyncEngineConfiguration = [] -CloudKit_CKSyncEngineDidFetchChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] -CloudKit_CKSyncEngineDidFetchRecordZoneChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] -CloudKit_CKSyncEngineDidSendChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] CloudKit_CKSyncEngineEvent = [] -CloudKit_CKSyncEngineFailedRecordSave = [] -CloudKit_CKSyncEngineFailedZoneSave = [] -CloudKit_CKSyncEngineFetchChangesContext = [] -CloudKit_CKSyncEngineFetchChangesOptions = [] -CloudKit_CKSyncEngineFetchChangesScope = [] -CloudKit_CKSyncEngineFetchedDatabaseChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] -CloudKit_CKSyncEngineFetchedRecordDeletion = [] -CloudKit_CKSyncEngineFetchedRecordZoneChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] -CloudKit_CKSyncEngineFetchedZoneDeletion = [] -CloudKit_CKSyncEnginePendingDatabaseChange = [] -CloudKit_CKSyncEnginePendingRecordZoneChange = [] -CloudKit_CKSyncEnginePendingZoneDelete = [ - "CloudKit_CKSyncEnginePendingDatabaseChange", -] -CloudKit_CKSyncEnginePendingZoneSave = [ - "CloudKit_CKSyncEnginePendingDatabaseChange", -] CloudKit_CKSyncEngineRecordZoneChangeBatch = [] -CloudKit_CKSyncEngineSendChangesContext = [] -CloudKit_CKSyncEngineSendChangesOptions = [] -CloudKit_CKSyncEngineSendChangesScope = [] -CloudKit_CKSyncEngineSentDatabaseChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] -CloudKit_CKSyncEngineSentRecordZoneChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] CloudKit_CKSyncEngineState = [] -CloudKit_CKSyncEngineStateSerialization = [] -CloudKit_CKSyncEngineStateUpdateEvent = [ - "CloudKit_CKSyncEngineEvent", -] -CloudKit_CKSyncEngineWillFetchChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] -CloudKit_CKSyncEngineWillFetchRecordZoneChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] -CloudKit_CKSyncEngineWillSendChangesEvent = [ - "CloudKit_CKSyncEngineEvent", -] CloudKit_CKSystemSharingUIObserver = [] CloudKit_CKUserIdentity = [] CloudKit_CKUserIdentityLookupInfo = [] +CloudKit_NSItemProvider_CKSharingSupport = [] CloudKit_all = [ "CloudKit", "CloudKit_CKAcceptSharesOperation", @@ -1686,17 +1237,15 @@ CloudKit_all = [ "CloudKit_CKAsset", "CloudKit_CKContainer", "CloudKit_CKDatabase", - "CloudKit_CKDatabaseNotification", "CloudKit_CKDatabaseOperation", - "CloudKit_CKDatabaseSubscription", + "CloudKit_CKDefines", "CloudKit_CKDiscoverAllUserIdentitiesOperation", "CloudKit_CKDiscoverUserIdentitiesOperation", + "CloudKit_CKError", "CloudKit_CKFetchDatabaseChangesOperation", "CloudKit_CKFetchNotificationChangesOperation", "CloudKit_CKFetchRecordChangesOperation", - "CloudKit_CKFetchRecordZoneChangesConfiguration", "CloudKit_CKFetchRecordZoneChangesOperation", - "CloudKit_CKFetchRecordZoneChangesOptions", "CloudKit_CKFetchRecordZonesOperation", "CloudKit_CKFetchRecordsOperation", "CloudKit_CKFetchShareMetadataOperation", @@ -1710,22 +1259,14 @@ CloudKit_all = [ "CloudKit_CKModifyRecordsOperation", "CloudKit_CKModifySubscriptionsOperation", "CloudKit_CKNotification", - "CloudKit_CKNotificationID", - "CloudKit_CKNotificationInfo", "CloudKit_CKOperation", - "CloudKit_CKOperationConfiguration", "CloudKit_CKOperationGroup", "CloudKit_CKQuery", - "CloudKit_CKQueryCursor", - "CloudKit_CKQueryNotification", "CloudKit_CKQueryOperation", - "CloudKit_CKQuerySubscription", "CloudKit_CKRecord", "CloudKit_CKRecordID", "CloudKit_CKRecordZone", "CloudKit_CKRecordZoneID", - "CloudKit_CKRecordZoneNotification", - "CloudKit_CKRecordZoneSubscription", "CloudKit_CKReference", "CloudKit_CKServerChangeToken", "CloudKit_CKShare", @@ -1733,130 +1274,52 @@ CloudKit_all = [ "CloudKit_CKShareParticipant", "CloudKit_CKSubscription", "CloudKit_CKSyncEngine", - "CloudKit_CKSyncEngineAccountChangeEvent", "CloudKit_CKSyncEngineConfiguration", - "CloudKit_CKSyncEngineDidFetchChangesEvent", - "CloudKit_CKSyncEngineDidFetchRecordZoneChangesEvent", - "CloudKit_CKSyncEngineDidSendChangesEvent", "CloudKit_CKSyncEngineEvent", - "CloudKit_CKSyncEngineFailedRecordSave", - "CloudKit_CKSyncEngineFailedZoneSave", - "CloudKit_CKSyncEngineFetchChangesContext", - "CloudKit_CKSyncEngineFetchChangesOptions", - "CloudKit_CKSyncEngineFetchChangesScope", - "CloudKit_CKSyncEngineFetchedDatabaseChangesEvent", - "CloudKit_CKSyncEngineFetchedRecordDeletion", - "CloudKit_CKSyncEngineFetchedRecordZoneChangesEvent", - "CloudKit_CKSyncEngineFetchedZoneDeletion", - "CloudKit_CKSyncEnginePendingDatabaseChange", - "CloudKit_CKSyncEnginePendingRecordZoneChange", - "CloudKit_CKSyncEnginePendingZoneDelete", - "CloudKit_CKSyncEnginePendingZoneSave", "CloudKit_CKSyncEngineRecordZoneChangeBatch", - "CloudKit_CKSyncEngineSendChangesContext", - "CloudKit_CKSyncEngineSendChangesOptions", - "CloudKit_CKSyncEngineSendChangesScope", - "CloudKit_CKSyncEngineSentDatabaseChangesEvent", - "CloudKit_CKSyncEngineSentRecordZoneChangesEvent", "CloudKit_CKSyncEngineState", - "CloudKit_CKSyncEngineStateSerialization", - "CloudKit_CKSyncEngineStateUpdateEvent", - "CloudKit_CKSyncEngineWillFetchChangesEvent", - "CloudKit_CKSyncEngineWillFetchRecordZoneChangesEvent", - "CloudKit_CKSyncEngineWillSendChangesEvent", "CloudKit_CKSystemSharingUIObserver", "CloudKit_CKUserIdentity", "CloudKit_CKUserIdentityLookupInfo", + "CloudKit_NSItemProvider_CKSharingSupport", ] Contacts = [ "Foundation", ] -Contacts_CNChangeHistoryAddContactEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryAddGroupEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryAddMemberToGroupEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryAddSubgroupToGroupEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryDeleteContactEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryDeleteGroupEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryDropEverythingEvent = [ - "Contacts_CNChangeHistoryEvent", -] Contacts_CNChangeHistoryEvent = [] -Contacts_CNChangeHistoryFetchRequest = [ - "Contacts_CNFetchRequest", -] -Contacts_CNChangeHistoryRemoveMemberFromGroupEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryRemoveSubgroupFromGroupEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryUpdateContactEvent = [ - "Contacts_CNChangeHistoryEvent", -] -Contacts_CNChangeHistoryUpdateGroupEvent = [ - "Contacts_CNChangeHistoryEvent", -] +Contacts_CNChangeHistoryFetchRequest = [] Contacts_CNContact = [] -Contacts_CNContactFetchRequest = [ - "Contacts_CNFetchRequest", -] -Contacts_CNContactFormatter = [ - "Foundation_NSFormatter", -] +Contacts_CNContactFetchRequest = [] +Contacts_CNContactFormatter = [] Contacts_CNContactProperty = [] Contacts_CNContactRelation = [] Contacts_CNContactStore = [] Contacts_CNContactVCardSerialization = [] +Contacts_CNContact_NSItemProvider = [] +Contacts_CNContact_Predicates = [] Contacts_CNContactsUserDefaults = [] Contacts_CNContainer = [] +Contacts_CNContainer_Predicates = [] +Contacts_CNError = [] Contacts_CNFetchRequest = [] Contacts_CNFetchResult = [] Contacts_CNGroup = [] +Contacts_CNGroup_Predicates = [] Contacts_CNInstantMessageAddress = [] Contacts_CNLabeledValue = [] -Contacts_CNMutableContact = [ - "Contacts_CNContact", -] -Contacts_CNMutableGroup = [ - "Contacts_CNGroup", -] -Contacts_CNMutablePostalAddress = [ - "Contacts_CNPostalAddress", -] +Contacts_CNMutableContact = [] +Contacts_CNMutableGroup = [] +Contacts_CNMutablePostalAddress = [] Contacts_CNPhoneNumber = [] Contacts_CNPostalAddress = [] -Contacts_CNPostalAddressFormatter = [ - "Foundation_NSFormatter", -] +Contacts_CNPostalAddressFormatter = [] Contacts_CNSaveRequest = [] Contacts_CNSocialProfile = [] +Contacts_ContactsDefines = [] Contacts_all = [ "Contacts", - "Contacts_CNChangeHistoryAddContactEvent", - "Contacts_CNChangeHistoryAddGroupEvent", - "Contacts_CNChangeHistoryAddMemberToGroupEvent", - "Contacts_CNChangeHistoryAddSubgroupToGroupEvent", - "Contacts_CNChangeHistoryDeleteContactEvent", - "Contacts_CNChangeHistoryDeleteGroupEvent", - "Contacts_CNChangeHistoryDropEverythingEvent", "Contacts_CNChangeHistoryEvent", "Contacts_CNChangeHistoryFetchRequest", - "Contacts_CNChangeHistoryRemoveMemberFromGroupEvent", - "Contacts_CNChangeHistoryRemoveSubgroupFromGroupEvent", - "Contacts_CNChangeHistoryUpdateContactEvent", - "Contacts_CNChangeHistoryUpdateGroupEvent", "Contacts_CNContact", "Contacts_CNContactFetchRequest", "Contacts_CNContactFormatter", @@ -1864,11 +1327,16 @@ Contacts_all = [ "Contacts_CNContactRelation", "Contacts_CNContactStore", "Contacts_CNContactVCardSerialization", + "Contacts_CNContact_NSItemProvider", + "Contacts_CNContact_Predicates", "Contacts_CNContactsUserDefaults", "Contacts_CNContainer", + "Contacts_CNContainer_Predicates", + "Contacts_CNError", "Contacts_CNFetchRequest", "Contacts_CNFetchResult", "Contacts_CNGroup", + "Contacts_CNGroup_Predicates", "Contacts_CNInstantMessageAddress", "Contacts_CNLabeledValue", "Contacts_CNMutableContact", @@ -1879,112 +1347,55 @@ Contacts_all = [ "Contacts_CNPostalAddressFormatter", "Contacts_CNSaveRequest", "Contacts_CNSocialProfile", + "Contacts_ContactsDefines", ] CoreData = [ "Foundation", ] -CoreData_NSAsynchronousFetchRequest = [ - "CoreData_NSPersistentStoreRequest", -] -CoreData_NSAsynchronousFetchResult = [ - "CoreData_NSPersistentStoreAsynchronousResult", -] -CoreData_NSAtomicStore = [ - "CoreData_NSPersistentStore", -] +CoreData_CoreDataDefines = [] +CoreData_CoreDataErrors = [] +CoreData_NSAtomicStore = [] CoreData_NSAtomicStoreCacheNode = [] -CoreData_NSAttributeDescription = [ - "CoreData_NSPropertyDescription", -] -CoreData_NSBatchDeleteRequest = [ - "CoreData_NSPersistentStoreRequest", -] -CoreData_NSBatchDeleteResult = [ - "CoreData_NSPersistentStoreResult", -] -CoreData_NSBatchInsertRequest = [ - "CoreData_NSPersistentStoreRequest", -] -CoreData_NSBatchInsertResult = [ - "CoreData_NSPersistentStoreResult", -] -CoreData_NSBatchUpdateRequest = [ - "CoreData_NSPersistentStoreRequest", -] -CoreData_NSBatchUpdateResult = [ - "CoreData_NSPersistentStoreResult", -] -CoreData_NSCompositeAttributeDescription = [ - "CoreData_NSAttributeDescription", -] -CoreData_NSConstraintConflict = [] +CoreData_NSAttributeDescription = [] +CoreData_NSBatchDeleteRequest = [] +CoreData_NSBatchInsertRequest = [] +CoreData_NSBatchUpdateRequest = [] +CoreData_NSCompositeAttributeDescription = [] CoreData_NSCoreDataCoreSpotlightDelegate = [] -CoreData_NSCustomMigrationStage = [ - "CoreData_NSMigrationStage", -] -CoreData_NSDerivedAttributeDescription = [ - "CoreData_NSAttributeDescription", -] +CoreData_NSCustomMigrationStage = [] +CoreData_NSDerivedAttributeDescription = [] CoreData_NSEntityDescription = [] CoreData_NSEntityMapping = [] CoreData_NSEntityMigrationPolicy = [] -CoreData_NSExpressionDescription = [ - "CoreData_NSPropertyDescription", -] +CoreData_NSExpressionDescription = [] CoreData_NSFetchIndexDescription = [] CoreData_NSFetchIndexElementDescription = [] -CoreData_NSFetchRequest = [ - "CoreData_NSPersistentStoreRequest", -] -CoreData_NSFetchRequestExpression = [ - "Foundation_NSExpression", -] -CoreData_NSFetchedPropertyDescription = [ - "CoreData_NSPropertyDescription", -] +CoreData_NSFetchRequest = [] +CoreData_NSFetchRequestExpression = [] +CoreData_NSFetchedPropertyDescription = [] CoreData_NSFetchedResultsController = [] -CoreData_NSIncrementalStore = [ - "CoreData_NSPersistentStore", -] +CoreData_NSIncrementalStore = [] CoreData_NSIncrementalStoreNode = [] -CoreData_NSLightweightMigrationStage = [ - "CoreData_NSMigrationStage", -] +CoreData_NSLightweightMigrationStage = [] CoreData_NSManagedObject = [] CoreData_NSManagedObjectContext = [] CoreData_NSManagedObjectID = [] CoreData_NSManagedObjectModel = [] CoreData_NSManagedObjectModelReference = [] CoreData_NSMappingModel = [] -CoreData_NSMergeConflict = [] CoreData_NSMergePolicy = [] CoreData_NSMigrationManager = [] CoreData_NSMigrationStage = [] -CoreData_NSPersistentCloudKitContainer = [ - "CoreData_NSPersistentContainer", -] +CoreData_NSPersistentCloudKitContainer = [] CoreData_NSPersistentCloudKitContainerEvent = [] -CoreData_NSPersistentCloudKitContainerEventRequest = [ - "CoreData_NSPersistentStoreRequest", -] -CoreData_NSPersistentCloudKitContainerEventResult = [ - "CoreData_NSPersistentStoreResult", -] +CoreData_NSPersistentCloudKitContainerEventRequest = [] CoreData_NSPersistentCloudKitContainerOptions = [] CoreData_NSPersistentContainer = [] CoreData_NSPersistentHistoryChange = [] -CoreData_NSPersistentHistoryChangeRequest = [ - "CoreData_NSPersistentStoreRequest", -] -CoreData_NSPersistentHistoryResult = [ - "CoreData_NSPersistentStoreResult", -] +CoreData_NSPersistentHistoryChangeRequest = [] CoreData_NSPersistentHistoryToken = [] CoreData_NSPersistentHistoryTransaction = [] CoreData_NSPersistentStore = [] -CoreData_NSPersistentStoreAsynchronousResult = [ - "CoreData_NSPersistentStoreResult", -] CoreData_NSPersistentStoreCoordinator = [] CoreData_NSPersistentStoreDescription = [] CoreData_NSPersistentStoreRequest = [] @@ -1992,28 +1403,20 @@ CoreData_NSPersistentStoreResult = [] CoreData_NSPropertyDescription = [] CoreData_NSPropertyMapping = [] CoreData_NSQueryGenerationToken = [] -CoreData_NSRelationshipDescription = [ - "CoreData_NSPropertyDescription", -] -CoreData_NSSaveChangesRequest = [ - "CoreData_NSPersistentStoreRequest", -] +CoreData_NSRelationshipDescription = [] +CoreData_NSSaveChangesRequest = [] CoreData_NSStagedMigrationManager = [] CoreData_all = [ "CoreData", - "CoreData_NSAsynchronousFetchRequest", - "CoreData_NSAsynchronousFetchResult", + "CoreData_CoreDataDefines", + "CoreData_CoreDataErrors", "CoreData_NSAtomicStore", "CoreData_NSAtomicStoreCacheNode", "CoreData_NSAttributeDescription", "CoreData_NSBatchDeleteRequest", - "CoreData_NSBatchDeleteResult", "CoreData_NSBatchInsertRequest", - "CoreData_NSBatchInsertResult", "CoreData_NSBatchUpdateRequest", - "CoreData_NSBatchUpdateResult", "CoreData_NSCompositeAttributeDescription", - "CoreData_NSConstraintConflict", "CoreData_NSCoreDataCoreSpotlightDelegate", "CoreData_NSCustomMigrationStage", "CoreData_NSDerivedAttributeDescription", @@ -2036,23 +1439,19 @@ CoreData_all = [ "CoreData_NSManagedObjectModel", "CoreData_NSManagedObjectModelReference", "CoreData_NSMappingModel", - "CoreData_NSMergeConflict", "CoreData_NSMergePolicy", "CoreData_NSMigrationManager", "CoreData_NSMigrationStage", "CoreData_NSPersistentCloudKitContainer", "CoreData_NSPersistentCloudKitContainerEvent", "CoreData_NSPersistentCloudKitContainerEventRequest", - "CoreData_NSPersistentCloudKitContainerEventResult", "CoreData_NSPersistentCloudKitContainerOptions", "CoreData_NSPersistentContainer", "CoreData_NSPersistentHistoryChange", "CoreData_NSPersistentHistoryChangeRequest", - "CoreData_NSPersistentHistoryResult", "CoreData_NSPersistentHistoryToken", "CoreData_NSPersistentHistoryTransaction", "CoreData_NSPersistentStore", - "CoreData_NSPersistentStoreAsynchronousResult", "CoreData_NSPersistentStoreCoordinator", "CoreData_NSPersistentStoreDescription", "CoreData_NSPersistentStoreRequest", @@ -2068,30 +1467,24 @@ CoreLocation = [ "Contacts", "Foundation", ] +CoreLocation_CLAvailability = [] CoreLocation_CLBackgroundActivitySession = [] -CoreLocation_CLBeacon = [] -CoreLocation_CLBeaconIdentityCondition = [ - "CoreLocation_CLCondition", -] -CoreLocation_CLBeaconIdentityConstraint = [ - "CoreLocation_CLBeaconIdentityCondition", -] -CoreLocation_CLBeaconRegion = [ - "CoreLocation_CLRegion", -] -CoreLocation_CLCircularGeographicCondition = [ - "CoreLocation_CLCondition", -] -CoreLocation_CLCircularRegion = [ - "CoreLocation_CLRegion", -] +CoreLocation_CLBeaconIdentityCondition = [] +CoreLocation_CLBeaconIdentityConstraint = [] +CoreLocation_CLBeaconRegion = [] +CoreLocation_CLCircularGeographicCondition = [] +CoreLocation_CLCircularRegion = [] CoreLocation_CLCondition = [] -CoreLocation_CLFloor = [] +CoreLocation_CLError = [] +CoreLocation_CLErrorDomain = [] CoreLocation_CLGeocoder = [] CoreLocation_CLHeading = [] CoreLocation_CLLocation = [] CoreLocation_CLLocationManager = [] -CoreLocation_CLLocationSourceInformation = [] +CoreLocation_CLLocationManagerDelegate = [] +CoreLocation_CLLocationManager_CLVisitExtensions = [] +CoreLocation_CLLocationPushServiceError = [] +CoreLocation_CLLocationPushServiceExtension = [] CoreLocation_CLLocationUpdater = [] CoreLocation_CLMonitor = [] CoreLocation_CLMonitorConfiguration = [] @@ -2099,24 +1492,27 @@ CoreLocation_CLMonitoringEvent = [] CoreLocation_CLMonitoringRecord = [] CoreLocation_CLPlacemark = [] CoreLocation_CLRegion = [] -CoreLocation_CLUpdate = [] CoreLocation_CLVisit = [] CoreLocation_all = [ "CoreLocation", + "CoreLocation_CLAvailability", "CoreLocation_CLBackgroundActivitySession", - "CoreLocation_CLBeacon", "CoreLocation_CLBeaconIdentityCondition", "CoreLocation_CLBeaconIdentityConstraint", "CoreLocation_CLBeaconRegion", "CoreLocation_CLCircularGeographicCondition", "CoreLocation_CLCircularRegion", "CoreLocation_CLCondition", - "CoreLocation_CLFloor", + "CoreLocation_CLError", + "CoreLocation_CLErrorDomain", "CoreLocation_CLGeocoder", "CoreLocation_CLHeading", "CoreLocation_CLLocation", "CoreLocation_CLLocationManager", - "CoreLocation_CLLocationSourceInformation", + "CoreLocation_CLLocationManagerDelegate", + "CoreLocation_CLLocationManager_CLVisitExtensions", + "CoreLocation_CLLocationPushServiceError", + "CoreLocation_CLLocationPushServiceExtension", "CoreLocation_CLLocationUpdater", "CoreLocation_CLMonitor", "CoreLocation_CLMonitorConfiguration", @@ -2124,7 +1520,6 @@ CoreLocation_all = [ "CoreLocation_CLMonitoringRecord", "CoreLocation_CLPlacemark", "CoreLocation_CLRegion", - "CoreLocation_CLUpdate", "CoreLocation_CLVisit", ] CoreWLAN = [ @@ -2133,75 +1528,45 @@ CoreWLAN = [ CoreWLAN_CWChannel = [] CoreWLAN_CWConfiguration = [] CoreWLAN_CWInterface = [] -CoreWLAN_CWMutableConfiguration = [ - "CoreWLAN_CWConfiguration", -] -CoreWLAN_CWMutableNetworkProfile = [ - "CoreWLAN_CWNetworkProfile", -] CoreWLAN_CWNetwork = [] CoreWLAN_CWNetworkProfile = [] CoreWLAN_CWWiFiClient = [] +CoreWLAN_CoreWLANConstants = [] +CoreWLAN_CoreWLANTypes = [] +CoreWLAN_CoreWLANUtil = [] CoreWLAN_all = [ "CoreWLAN", "CoreWLAN_CWChannel", "CoreWLAN_CWConfiguration", "CoreWLAN_CWInterface", - "CoreWLAN_CWMutableConfiguration", - "CoreWLAN_CWMutableNetworkProfile", "CoreWLAN_CWNetwork", "CoreWLAN_CWNetworkProfile", "CoreWLAN_CWWiFiClient", + "CoreWLAN_CoreWLANConstants", + "CoreWLAN_CoreWLANTypes", + "CoreWLAN_CoreWLANUtil", ] DataDetection = [ "Foundation", ] DataDetection_DDMatch = [] -DataDetection_DDMatchCalendarEvent = [ - "DataDetection_DDMatch", -] -DataDetection_DDMatchEmailAddress = [ - "DataDetection_DDMatch", -] -DataDetection_DDMatchFlightNumber = [ - "DataDetection_DDMatch", -] -DataDetection_DDMatchLink = [ - "DataDetection_DDMatch", -] -DataDetection_DDMatchMoneyAmount = [ - "DataDetection_DDMatch", -] -DataDetection_DDMatchPhoneNumber = [ - "DataDetection_DDMatch", -] -DataDetection_DDMatchPostalAddress = [ - "DataDetection_DDMatch", -] -DataDetection_DDMatchShipmentTrackingNumber = [ - "DataDetection_DDMatch", -] +DataDetection_DataDetectionBase = [] DataDetection_all = [ "DataDetection", "DataDetection_DDMatch", - "DataDetection_DDMatchCalendarEvent", - "DataDetection_DDMatchEmailAddress", - "DataDetection_DDMatchFlightNumber", - "DataDetection_DDMatchLink", - "DataDetection_DDMatchMoneyAmount", - "DataDetection_DDMatchPhoneNumber", - "DataDetection_DDMatchPostalAddress", - "DataDetection_DDMatchShipmentTrackingNumber", + "DataDetection_DataDetectionBase", ] DeviceCheck = [ "Foundation", ] DeviceCheck_DCAppAttestService = [] DeviceCheck_DCDevice = [] +DeviceCheck_DCError = [] DeviceCheck_all = [ "DeviceCheck", "DeviceCheck_DCAppAttestService", "DeviceCheck_DCDevice", + "DeviceCheck_DCError", ] EventKit = [ "AppKit", @@ -2209,46 +1574,30 @@ EventKit = [ "Foundation", "MapKit", ] -EventKit_EKAlarm = [ - "EventKit_EKObject", -] -EventKit_EKCalendar = [ - "EventKit_EKObject", -] -EventKit_EKCalendarItem = [ - "EventKit_EKObject", -] -EventKit_EKEvent = [ - "EventKit_EKCalendarItem", -] +EventKit_EKAlarm = [] +EventKit_EKCalendar = [] +EventKit_EKCalendarItem = [] +EventKit_EKError = [] +EventKit_EKEvent = [] EventKit_EKEventStore = [] EventKit_EKObject = [] -EventKit_EKParticipant = [ - "EventKit_EKObject", -] +EventKit_EKParticipant = [] EventKit_EKRecurrenceDayOfWeek = [] EventKit_EKRecurrenceEnd = [] -EventKit_EKRecurrenceRule = [ - "EventKit_EKObject", -] -EventKit_EKReminder = [ - "EventKit_EKCalendarItem", -] -EventKit_EKSource = [ - "EventKit_EKObject", -] -EventKit_EKStructuredLocation = [ - "EventKit_EKObject", -] +EventKit_EKRecurrenceRule = [] +EventKit_EKReminder = [] +EventKit_EKSource = [] +EventKit_EKStructuredLocation = [] +EventKit_EKTypes = [] EventKit_EKVirtualConferenceDescriptor = [] EventKit_EKVirtualConferenceProvider = [] -EventKit_EKVirtualConferenceRoomTypeDescriptor = [] -EventKit_EKVirtualConferenceURLDescriptor = [] +EventKit_EventKitDefines = [] EventKit_all = [ "EventKit", "EventKit_EKAlarm", "EventKit_EKCalendar", "EventKit_EKCalendarItem", + "EventKit_EKError", "EventKit_EKEvent", "EventKit_EKEventStore", "EventKit_EKObject", @@ -2259,29 +1608,27 @@ EventKit_all = [ "EventKit_EKReminder", "EventKit_EKSource", "EventKit_EKStructuredLocation", + "EventKit_EKTypes", "EventKit_EKVirtualConferenceDescriptor", "EventKit_EKVirtualConferenceProvider", - "EventKit_EKVirtualConferenceRoomTypeDescriptor", - "EventKit_EKVirtualConferenceURLDescriptor", + "EventKit_EventKitDefines", ] ExceptionHandling = [ "Foundation", ] +ExceptionHandling_ExceptionHandlingDefines = [] ExceptionHandling_NSExceptionHandler = [] ExceptionHandling_all = [ "ExceptionHandling", + "ExceptionHandling_ExceptionHandlingDefines", "ExceptionHandling_NSExceptionHandler", ] ExtensionKit = [ "AppKit", "Foundation", ] -ExtensionKit_EXAppExtensionBrowserViewController = [ - "AppKit_NSViewController", -] -ExtensionKit_EXHostViewController = [ - "AppKit_NSViewController", -] +ExtensionKit_EXAppExtensionBrowserViewController = [] +ExtensionKit_EXHostViewController = [] ExtensionKit_all = [ "ExtensionKit", "ExtensionKit_EXAppExtensionBrowserViewController", @@ -2295,6 +1642,7 @@ ExternalAccessory_EAAccessoryManager = [] ExternalAccessory_EASession = [] ExternalAccessory_EAWiFiUnconfiguredAccessory = [] ExternalAccessory_EAWiFiUnconfiguredAccessoryBrowser = [] +ExternalAccessory_ExternalAccessoryDefines = [] ExternalAccessory_all = [ "ExternalAccessory", "ExternalAccessory_EAAccessory", @@ -2302,6 +1650,7 @@ ExternalAccessory_all = [ "ExternalAccessory_EASession", "ExternalAccessory_EAWiFiUnconfiguredAccessory", "ExternalAccessory_EAWiFiUnconfiguredAccessoryBrowser", + "ExternalAccessory_ExternalAccessoryDefines", ] FileProvider = [ "AppKit", @@ -2313,371 +1662,181 @@ FileProviderUI = [ "FileProvider", "Foundation", ] -FileProviderUI_FPUIActionExtensionContext = [ - "Foundation_NSExtensionContext", -] -FileProviderUI_FPUIActionExtensionViewController = [ - "AppKit_NSViewController", -] +FileProviderUI_FPUIActionExtensionContext = [] +FileProviderUI_FPUIActionExtensionViewController = [] +FileProviderUI_FPUIBase = [] FileProviderUI_all = [ "FileProviderUI", "FileProviderUI_FPUIActionExtensionContext", "FileProviderUI_FPUIActionExtensionViewController", + "FileProviderUI_FPUIBase", ] +FileProvider_NSFileProviderActions = [] +FileProvider_NSFileProviderDefines = [] FileProvider_NSFileProviderDomain = [] -FileProvider_NSFileProviderDomainVersion = [] +FileProvider_NSFileProviderEnumerating = [] +FileProvider_NSFileProviderError = [] FileProvider_NSFileProviderExtension = [] -FileProvider_NSFileProviderItemVersion = [] +FileProvider_NSFileProviderItem = [] +FileProvider_NSFileProviderItemDecoration = [] FileProvider_NSFileProviderManager = [] +FileProvider_NSFileProviderModifyItemOptions = [] +FileProvider_NSFileProviderReplicatedExtension = [] FileProvider_NSFileProviderRequest = [] +FileProvider_NSFileProviderService = [] +FileProvider_NSFileProviderTesting = [] +FileProvider_NSFileProviderThumbnailing = [] FileProvider_all = [ "FileProvider", + "FileProvider_NSFileProviderActions", + "FileProvider_NSFileProviderDefines", "FileProvider_NSFileProviderDomain", - "FileProvider_NSFileProviderDomainVersion", + "FileProvider_NSFileProviderEnumerating", + "FileProvider_NSFileProviderError", "FileProvider_NSFileProviderExtension", - "FileProvider_NSFileProviderItemVersion", + "FileProvider_NSFileProviderItem", + "FileProvider_NSFileProviderItemDecoration", "FileProvider_NSFileProviderManager", + "FileProvider_NSFileProviderModifyItemOptions", + "FileProvider_NSFileProviderReplicatedExtension", "FileProvider_NSFileProviderRequest", + "FileProvider_NSFileProviderService", + "FileProvider_NSFileProviderTesting", + "FileProvider_NSFileProviderThumbnailing", ] Foundation = [ "objc2", "block2", + "Foundation_NSObjCRuntime", "Foundation_NSString", "Foundation_NSDictionary", "Foundation_NSEnumerator", ] +Foundation_FoundationErrors = [] +Foundation_FoundationLegacySwiftCompatibility = [] Foundation_NSAffineTransform = [] Foundation_NSAppleEventDescriptor = [] Foundation_NSAppleEventManager = [] Foundation_NSAppleScript = [] -Foundation_NSArchiver = [ - "Foundation_NSCoder", -] +Foundation_NSArchiver = [] Foundation_NSArray = [] -Foundation_NSAssertionHandler = [] Foundation_NSAttributedString = [] -Foundation_NSAttributedStringMarkdownParsingOptions = [] -Foundation_NSAttributedStringMarkdownSourcePosition = [] Foundation_NSAutoreleasePool = [] Foundation_NSBackgroundActivityScheduler = [] -Foundation_NSBlockOperation = [ - "Foundation_NSOperation", -] Foundation_NSBundle = [] -Foundation_NSBundleResourceRequest = [] -Foundation_NSByteCountFormatter = [ - "Foundation_NSFormatter", -] +Foundation_NSByteCountFormatter = [] +Foundation_NSByteOrder = [] Foundation_NSCache = [] -Foundation_NSCachedURLResponse = [] Foundation_NSCalendar = [] -Foundation_NSCalendarDate = [ - "Foundation_NSDate", -] +Foundation_NSCalendarDate = [] Foundation_NSCharacterSet = [] Foundation_NSClassDescription = [] -Foundation_NSCloneCommand = [ - "Foundation_NSScriptCommand", -] -Foundation_NSCloseCommand = [ - "Foundation_NSScriptCommand", -] Foundation_NSCoder = [] -Foundation_NSComparisonPredicate = [ - "Foundation_NSPredicate", -] -Foundation_NSCompoundPredicate = [ - "Foundation_NSPredicate", -] -Foundation_NSCondition = [] -Foundation_NSConditionLock = [] +Foundation_NSComparisonPredicate = [] +Foundation_NSCompoundPredicate = [] Foundation_NSConnection = [] -Foundation_NSConstantString = [ - "Foundation_NSSimpleCString", -] -Foundation_NSCountCommand = [ - "Foundation_NSScriptCommand", -] -Foundation_NSCountedSet = [ - "Foundation_NSMutableSet", -] -Foundation_NSCreateCommand = [ - "Foundation_NSScriptCommand", -] Foundation_NSData = [] -Foundation_NSDataDetector = [ - "Foundation_NSRegularExpression", -] Foundation_NSDate = [] -Foundation_NSDateComponents = [] -Foundation_NSDateComponentsFormatter = [ - "Foundation_NSFormatter", -] -Foundation_NSDateFormatter = [ - "Foundation_NSFormatter", -] +Foundation_NSDateComponentsFormatter = [] +Foundation_NSDateFormatter = [] Foundation_NSDateInterval = [] -Foundation_NSDateIntervalFormatter = [ - "Foundation_NSFormatter", -] -Foundation_NSDecimalNumber = [ - "Foundation_NSNumber", -] -Foundation_NSDecimalNumberHandler = [] -Foundation_NSDeleteCommand = [ - "Foundation_NSScriptCommand", -] +Foundation_NSDateIntervalFormatter = [] +Foundation_NSDecimal = [] +Foundation_NSDecimalNumber = [] Foundation_NSDictionary = [] -Foundation_NSDimension = [ - "Foundation_NSUnit", -] -Foundation_NSDirectoryEnumerator = [ - "Foundation_NSEnumerator", -] -Foundation_NSDistantObject = [ - "Foundation_NSProxy", -] -Foundation_NSDistantObjectRequest = [] +Foundation_NSDistantObject = [] Foundation_NSDistributedLock = [] -Foundation_NSDistributedNotificationCenter = [ - "Foundation_NSNotificationCenter", -] -Foundation_NSEnergyFormatter = [ - "Foundation_NSFormatter", -] +Foundation_NSDistributedNotificationCenter = [] +Foundation_NSEnergyFormatter = [] Foundation_NSEnumerator = [] Foundation_NSError = [] Foundation_NSException = [] -Foundation_NSExistsCommand = [ - "Foundation_NSScriptCommand", -] Foundation_NSExpression = [] Foundation_NSExtensionContext = [] Foundation_NSExtensionItem = [] -Foundation_NSFileAccessIntent = [] +Foundation_NSExtensionRequestHandling = [] Foundation_NSFileCoordinator = [] Foundation_NSFileHandle = [] Foundation_NSFileManager = [] -Foundation_NSFileProviderService = [] -Foundation_NSFileSecurity = [] +Foundation_NSFilePresenter = [] Foundation_NSFileVersion = [] Foundation_NSFileWrapper = [] Foundation_NSFormatter = [] Foundation_NSGarbageCollector = [] -Foundation_NSGetCommand = [ - "Foundation_NSScriptCommand", -] +Foundation_NSGeometry = [] +Foundation_NSHFSFileTypes = [] Foundation_NSHTTPCookie = [] Foundation_NSHTTPCookieStorage = [] -Foundation_NSHTTPURLResponse = [ - "Foundation_NSURLResponse", -] Foundation_NSHashTable = [] Foundation_NSHost = [] -Foundation_NSISO8601DateFormatter = [ - "Foundation_NSFormatter", -] +Foundation_NSISO8601DateFormatter = [] Foundation_NSIndexPath = [] Foundation_NSIndexSet = [] -Foundation_NSIndexSpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] Foundation_NSInflectionRule = [] -Foundation_NSInflectionRuleExplicit = [ - "Foundation_NSInflectionRule", -] -Foundation_NSInputStream = [ - "Foundation_NSStream", -] Foundation_NSInvocation = [] -Foundation_NSInvocationOperation = [ - "Foundation_NSOperation", -] Foundation_NSItemProvider = [] Foundation_NSJSONSerialization = [] -Foundation_NSKeyedArchiver = [ - "Foundation_NSCoder", -] -Foundation_NSKeyedUnarchiver = [ - "Foundation_NSCoder", -] -Foundation_NSLengthFormatter = [ - "Foundation_NSFormatter", -] +Foundation_NSKeyValueCoding = [] +Foundation_NSKeyValueObserving = [] +Foundation_NSKeyedArchiver = [] +Foundation_NSLengthFormatter = [] Foundation_NSLinguisticTagger = [] -Foundation_NSListFormatter = [ - "Foundation_NSFormatter", -] +Foundation_NSListFormatter = [] Foundation_NSLocale = [] Foundation_NSLock = [] -Foundation_NSLogicalTest = [ - "Foundation_NSScriptWhoseTest", -] -Foundation_NSMachBootstrapServer = [ - "Foundation_NSPortNameServer", -] -Foundation_NSMachPort = [ - "Foundation_NSPort", -] Foundation_NSMapTable = [] -Foundation_NSMassFormatter = [ - "Foundation_NSFormatter", -] +Foundation_NSMassFormatter = [] Foundation_NSMeasurement = [] -Foundation_NSMeasurementFormatter = [ - "Foundation_NSFormatter", -] -Foundation_NSMessagePort = [ - "Foundation_NSPort", -] -Foundation_NSMessagePortNameServer = [ - "Foundation_NSPortNameServer", -] -Foundation_NSMetadataItem = [] -Foundation_NSMetadataQuery = [] -Foundation_NSMetadataQueryAttributeValueTuple = [] -Foundation_NSMetadataQueryResultGroup = [] +Foundation_NSMeasurementFormatter = [] +Foundation_NSMetadata = [] +Foundation_NSMetadataAttributes = [] Foundation_NSMethodSignature = [] -Foundation_NSMiddleSpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] Foundation_NSMorphology = [] -Foundation_NSMorphologyCustomPronoun = [] -Foundation_NSMorphologyPronoun = [] -Foundation_NSMoveCommand = [ - "Foundation_NSScriptCommand", -] -Foundation_NSMutableArray = [ - "Foundation_NSArray", -] -Foundation_NSMutableAttributedString = [ - "Foundation_NSAttributedString", -] -Foundation_NSMutableCharacterSet = [ - "Foundation_NSCharacterSet", -] -Foundation_NSMutableData = [ - "Foundation_NSData", -] -Foundation_NSMutableDictionary = [ - "Foundation_NSDictionary", -] -Foundation_NSMutableIndexSet = [ - "Foundation_NSIndexSet", -] -Foundation_NSMutableOrderedSet = [ - "Foundation_NSOrderedSet", -] -Foundation_NSMutableSet = [ - "Foundation_NSSet", -] -Foundation_NSMutableString = [ - "Foundation_NSString", -] -Foundation_NSMutableURLRequest = [ - "Foundation_NSURLRequest", -] -Foundation_NSNameSpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] -Foundation_NSNetService = [] -Foundation_NSNetServiceBrowser = [] +Foundation_NSNetServices = [] Foundation_NSNotification = [] -Foundation_NSNotificationCenter = [] Foundation_NSNotificationQueue = [] Foundation_NSNull = [] -Foundation_NSNumber = [ - "Foundation_NSValue", -] -Foundation_NSNumberFormatter = [ - "Foundation_NSFormatter", -] +Foundation_NSNumberFormatter = [] +Foundation_NSObjCRuntime = [] +Foundation_NSObject = [] +Foundation_NSObjectScripting = [] Foundation_NSOperation = [] -Foundation_NSOperationQueue = [] Foundation_NSOrderedCollectionChange = [] Foundation_NSOrderedCollectionDifference = [] Foundation_NSOrderedSet = [] Foundation_NSOrthography = [] -Foundation_NSOutputStream = [ - "Foundation_NSStream", -] +Foundation_NSPathUtilities = [] Foundation_NSPersonNameComponents = [] -Foundation_NSPersonNameComponentsFormatter = [ - "Foundation_NSFormatter", -] -Foundation_NSPipe = [] +Foundation_NSPersonNameComponentsFormatter = [] Foundation_NSPointerArray = [] Foundation_NSPointerFunctions = [] Foundation_NSPort = [] -Foundation_NSPortCoder = [ - "Foundation_NSCoder", -] +Foundation_NSPortCoder = [] Foundation_NSPortMessage = [] Foundation_NSPortNameServer = [] -Foundation_NSPositionalSpecifier = [] Foundation_NSPredicate = [] -Foundation_NSPresentationIntent = [] Foundation_NSProcessInfo = [] Foundation_NSProgress = [] -Foundation_NSPropertyListSerialization = [] -Foundation_NSPropertySpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] -Foundation_NSProtocolChecker = [ - "Foundation_NSProxy", -] -Foundation_NSPurgeableData = [ - "Foundation_NSMutableData", -] -Foundation_NSQuitCommand = [ - "Foundation_NSScriptCommand", -] -Foundation_NSRandomSpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] -Foundation_NSRangeSpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] -Foundation_NSRecursiveLock = [] +Foundation_NSPropertyList = [] +Foundation_NSProtocolChecker = [] +Foundation_NSProxy = [] +Foundation_NSRange = [] Foundation_NSRegularExpression = [] -Foundation_NSRelativeDateTimeFormatter = [ - "Foundation_NSFormatter", -] -Foundation_NSRelativeSpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] +Foundation_NSRelativeDateTimeFormatter = [] Foundation_NSRunLoop = [] Foundation_NSScanner = [] -Foundation_NSScriptClassDescription = [ - "Foundation_NSClassDescription", -] +Foundation_NSScriptClassDescription = [] Foundation_NSScriptCoercionHandler = [] Foundation_NSScriptCommand = [] Foundation_NSScriptCommandDescription = [] Foundation_NSScriptExecutionContext = [] -Foundation_NSScriptObjectSpecifier = [] +Foundation_NSScriptKeyValueCoding = [] +Foundation_NSScriptObjectSpecifiers = [] +Foundation_NSScriptStandardSuiteCommands = [] Foundation_NSScriptSuiteRegistry = [] -Foundation_NSScriptWhoseTest = [] -Foundation_NSSecureUnarchiveFromDataTransformer = [ - "Foundation_NSValueTransformer", -] +Foundation_NSScriptWhoseTests = [] Foundation_NSSet = [] -Foundation_NSSetCommand = [ - "Foundation_NSScriptCommand", -] -Foundation_NSSimpleCString = [ - "Foundation_NSString", -] -Foundation_NSSocketPort = [ - "Foundation_NSPort", -] -Foundation_NSSocketPortNameServer = [ - "Foundation_NSPortNameServer", -] Foundation_NSSortDescriptor = [] -Foundation_NSSpecifierTest = [ - "Foundation_NSScriptWhoseTest", -] Foundation_NSSpellServer = [] Foundation_NSStream = [] Foundation_NSString = [] @@ -2690,325 +1849,149 @@ Foundation_NSTimer = [] Foundation_NSURL = [] Foundation_NSURLAuthenticationChallenge = [] Foundation_NSURLCache = [] -Foundation_NSURLComponents = [] Foundation_NSURLConnection = [] Foundation_NSURLCredential = [] Foundation_NSURLCredentialStorage = [] Foundation_NSURLDownload = [] +Foundation_NSURLError = [] Foundation_NSURLHandle = [] Foundation_NSURLProtectionSpace = [] Foundation_NSURLProtocol = [] -Foundation_NSURLQueryItem = [] Foundation_NSURLRequest = [] Foundation_NSURLResponse = [] Foundation_NSURLSession = [] -Foundation_NSURLSessionConfiguration = [] -Foundation_NSURLSessionDataTask = [ - "Foundation_NSURLSessionTask", -] -Foundation_NSURLSessionDownloadTask = [ - "Foundation_NSURLSessionTask", -] -Foundation_NSURLSessionStreamTask = [ - "Foundation_NSURLSessionTask", -] -Foundation_NSURLSessionTask = [] -Foundation_NSURLSessionTaskMetrics = [] -Foundation_NSURLSessionTaskTransactionMetrics = [] -Foundation_NSURLSessionUploadTask = [ - "Foundation_NSURLSessionDataTask", -] -Foundation_NSURLSessionWebSocketMessage = [] -Foundation_NSURLSessionWebSocketTask = [ - "Foundation_NSURLSessionTask", -] Foundation_NSUUID = [] Foundation_NSUbiquitousKeyValueStore = [] -Foundation_NSUnarchiver = [ - "Foundation_NSCoder", -] Foundation_NSUndoManager = [] -Foundation_NSUniqueIDSpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] Foundation_NSUnit = [] -Foundation_NSUnitAcceleration = [ - "Foundation_NSDimension", -] -Foundation_NSUnitAngle = [ - "Foundation_NSDimension", -] -Foundation_NSUnitArea = [ - "Foundation_NSDimension", -] -Foundation_NSUnitConcentrationMass = [ - "Foundation_NSDimension", -] -Foundation_NSUnitConverter = [] -Foundation_NSUnitConverterLinear = [ - "Foundation_NSUnitConverter", -] -Foundation_NSUnitDispersion = [ - "Foundation_NSDimension", -] -Foundation_NSUnitDuration = [ - "Foundation_NSDimension", -] -Foundation_NSUnitElectricCharge = [ - "Foundation_NSDimension", -] -Foundation_NSUnitElectricCurrent = [ - "Foundation_NSDimension", -] -Foundation_NSUnitElectricPotentialDifference = [ - "Foundation_NSDimension", -] -Foundation_NSUnitElectricResistance = [ - "Foundation_NSDimension", -] -Foundation_NSUnitEnergy = [ - "Foundation_NSDimension", -] -Foundation_NSUnitFrequency = [ - "Foundation_NSDimension", -] -Foundation_NSUnitFuelEfficiency = [ - "Foundation_NSDimension", -] -Foundation_NSUnitIlluminance = [ - "Foundation_NSDimension", -] -Foundation_NSUnitInformationStorage = [ - "Foundation_NSDimension", -] -Foundation_NSUnitLength = [ - "Foundation_NSDimension", -] -Foundation_NSUnitMass = [ - "Foundation_NSDimension", -] -Foundation_NSUnitPower = [ - "Foundation_NSDimension", -] -Foundation_NSUnitPressure = [ - "Foundation_NSDimension", -] -Foundation_NSUnitSpeed = [ - "Foundation_NSDimension", -] -Foundation_NSUnitTemperature = [ - "Foundation_NSDimension", -] -Foundation_NSUnitVolume = [ - "Foundation_NSDimension", -] Foundation_NSUserActivity = [] -Foundation_NSUserAppleScriptTask = [ - "Foundation_NSUserScriptTask", -] -Foundation_NSUserAutomatorTask = [ - "Foundation_NSUserScriptTask", -] Foundation_NSUserDefaults = [] Foundation_NSUserNotification = [] -Foundation_NSUserNotificationAction = [] -Foundation_NSUserNotificationCenter = [] Foundation_NSUserScriptTask = [] -Foundation_NSUserUnixTask = [ - "Foundation_NSUserScriptTask", -] Foundation_NSValue = [] Foundation_NSValueTransformer = [] -Foundation_NSWhoseSpecifier = [ - "Foundation_NSScriptObjectSpecifier", -] -Foundation_NSXMLDTD = [ - "Foundation_NSXMLNode", -] -Foundation_NSXMLDTDNode = [ - "Foundation_NSXMLNode", -] -Foundation_NSXMLDocument = [ - "Foundation_NSXMLNode", -] -Foundation_NSXMLElement = [ - "Foundation_NSXMLNode", -] +Foundation_NSXMLDTD = [] +Foundation_NSXMLDTDNode = [] +Foundation_NSXMLDocument = [] +Foundation_NSXMLElement = [] Foundation_NSXMLNode = [] +Foundation_NSXMLNodeOptions = [] Foundation_NSXMLParser = [] -Foundation_NSXPCCoder = [ - "Foundation_NSCoder", -] Foundation_NSXPCConnection = [] -Foundation_NSXPCInterface = [] -Foundation_NSXPCListener = [] -Foundation_NSXPCListenerEndpoint = [] +Foundation_NSZone = [] Foundation_all = [ "Foundation", + "Foundation_FoundationErrors", + "Foundation_FoundationLegacySwiftCompatibility", "Foundation_NSAffineTransform", "Foundation_NSAppleEventDescriptor", "Foundation_NSAppleEventManager", "Foundation_NSAppleScript", "Foundation_NSArchiver", "Foundation_NSArray", - "Foundation_NSAssertionHandler", "Foundation_NSAttributedString", - "Foundation_NSAttributedStringMarkdownParsingOptions", - "Foundation_NSAttributedStringMarkdownSourcePosition", "Foundation_NSAutoreleasePool", "Foundation_NSBackgroundActivityScheduler", - "Foundation_NSBlockOperation", "Foundation_NSBundle", - "Foundation_NSBundleResourceRequest", "Foundation_NSByteCountFormatter", + "Foundation_NSByteOrder", "Foundation_NSCache", - "Foundation_NSCachedURLResponse", "Foundation_NSCalendar", "Foundation_NSCalendarDate", "Foundation_NSCharacterSet", "Foundation_NSClassDescription", - "Foundation_NSCloneCommand", - "Foundation_NSCloseCommand", "Foundation_NSCoder", "Foundation_NSComparisonPredicate", "Foundation_NSCompoundPredicate", - "Foundation_NSCondition", - "Foundation_NSConditionLock", "Foundation_NSConnection", - "Foundation_NSConstantString", - "Foundation_NSCountCommand", - "Foundation_NSCountedSet", - "Foundation_NSCreateCommand", "Foundation_NSData", - "Foundation_NSDataDetector", "Foundation_NSDate", - "Foundation_NSDateComponents", "Foundation_NSDateComponentsFormatter", "Foundation_NSDateFormatter", "Foundation_NSDateInterval", "Foundation_NSDateIntervalFormatter", + "Foundation_NSDecimal", "Foundation_NSDecimalNumber", - "Foundation_NSDecimalNumberHandler", - "Foundation_NSDeleteCommand", "Foundation_NSDictionary", - "Foundation_NSDimension", - "Foundation_NSDirectoryEnumerator", "Foundation_NSDistantObject", - "Foundation_NSDistantObjectRequest", "Foundation_NSDistributedLock", "Foundation_NSDistributedNotificationCenter", "Foundation_NSEnergyFormatter", "Foundation_NSEnumerator", "Foundation_NSError", "Foundation_NSException", - "Foundation_NSExistsCommand", "Foundation_NSExpression", "Foundation_NSExtensionContext", "Foundation_NSExtensionItem", - "Foundation_NSFileAccessIntent", + "Foundation_NSExtensionRequestHandling", "Foundation_NSFileCoordinator", "Foundation_NSFileHandle", "Foundation_NSFileManager", - "Foundation_NSFileProviderService", - "Foundation_NSFileSecurity", + "Foundation_NSFilePresenter", "Foundation_NSFileVersion", "Foundation_NSFileWrapper", "Foundation_NSFormatter", "Foundation_NSGarbageCollector", - "Foundation_NSGetCommand", + "Foundation_NSGeometry", + "Foundation_NSHFSFileTypes", "Foundation_NSHTTPCookie", "Foundation_NSHTTPCookieStorage", - "Foundation_NSHTTPURLResponse", "Foundation_NSHashTable", "Foundation_NSHost", "Foundation_NSISO8601DateFormatter", "Foundation_NSIndexPath", "Foundation_NSIndexSet", - "Foundation_NSIndexSpecifier", "Foundation_NSInflectionRule", - "Foundation_NSInflectionRuleExplicit", - "Foundation_NSInputStream", "Foundation_NSInvocation", - "Foundation_NSInvocationOperation", "Foundation_NSItemProvider", "Foundation_NSJSONSerialization", + "Foundation_NSKeyValueCoding", + "Foundation_NSKeyValueObserving", "Foundation_NSKeyedArchiver", - "Foundation_NSKeyedUnarchiver", "Foundation_NSLengthFormatter", "Foundation_NSLinguisticTagger", "Foundation_NSListFormatter", "Foundation_NSLocale", "Foundation_NSLock", - "Foundation_NSLogicalTest", - "Foundation_NSMachBootstrapServer", - "Foundation_NSMachPort", "Foundation_NSMapTable", "Foundation_NSMassFormatter", "Foundation_NSMeasurement", "Foundation_NSMeasurementFormatter", - "Foundation_NSMessagePort", - "Foundation_NSMessagePortNameServer", - "Foundation_NSMetadataItem", - "Foundation_NSMetadataQuery", - "Foundation_NSMetadataQueryAttributeValueTuple", - "Foundation_NSMetadataQueryResultGroup", + "Foundation_NSMetadata", + "Foundation_NSMetadataAttributes", "Foundation_NSMethodSignature", - "Foundation_NSMiddleSpecifier", "Foundation_NSMorphology", - "Foundation_NSMorphologyCustomPronoun", - "Foundation_NSMorphologyPronoun", - "Foundation_NSMoveCommand", - "Foundation_NSMutableArray", - "Foundation_NSMutableAttributedString", - "Foundation_NSMutableCharacterSet", - "Foundation_NSMutableData", - "Foundation_NSMutableDictionary", - "Foundation_NSMutableIndexSet", - "Foundation_NSMutableOrderedSet", - "Foundation_NSMutableSet", - "Foundation_NSMutableString", - "Foundation_NSMutableURLRequest", - "Foundation_NSNameSpecifier", - "Foundation_NSNetService", - "Foundation_NSNetServiceBrowser", + "Foundation_NSNetServices", "Foundation_NSNotification", - "Foundation_NSNotificationCenter", "Foundation_NSNotificationQueue", "Foundation_NSNull", - "Foundation_NSNumber", "Foundation_NSNumberFormatter", + "Foundation_NSObjCRuntime", + "Foundation_NSObject", + "Foundation_NSObjectScripting", "Foundation_NSOperation", - "Foundation_NSOperationQueue", "Foundation_NSOrderedCollectionChange", "Foundation_NSOrderedCollectionDifference", "Foundation_NSOrderedSet", "Foundation_NSOrthography", - "Foundation_NSOutputStream", + "Foundation_NSPathUtilities", "Foundation_NSPersonNameComponents", "Foundation_NSPersonNameComponentsFormatter", - "Foundation_NSPipe", "Foundation_NSPointerArray", "Foundation_NSPointerFunctions", "Foundation_NSPort", "Foundation_NSPortCoder", "Foundation_NSPortMessage", "Foundation_NSPortNameServer", - "Foundation_NSPositionalSpecifier", "Foundation_NSPredicate", - "Foundation_NSPresentationIntent", "Foundation_NSProcessInfo", "Foundation_NSProgress", - "Foundation_NSPropertyListSerialization", - "Foundation_NSPropertySpecifier", + "Foundation_NSPropertyList", "Foundation_NSProtocolChecker", - "Foundation_NSPurgeableData", - "Foundation_NSQuitCommand", - "Foundation_NSRandomSpecifier", - "Foundation_NSRangeSpecifier", - "Foundation_NSRecursiveLock", + "Foundation_NSProxy", + "Foundation_NSRange", "Foundation_NSRegularExpression", "Foundation_NSRelativeDateTimeFormatter", - "Foundation_NSRelativeSpecifier", "Foundation_NSRunLoop", "Foundation_NSScanner", "Foundation_NSScriptClassDescription", @@ -3016,17 +1999,13 @@ Foundation_all = [ "Foundation_NSScriptCommand", "Foundation_NSScriptCommandDescription", "Foundation_NSScriptExecutionContext", - "Foundation_NSScriptObjectSpecifier", + "Foundation_NSScriptKeyValueCoding", + "Foundation_NSScriptObjectSpecifiers", + "Foundation_NSScriptStandardSuiteCommands", "Foundation_NSScriptSuiteRegistry", - "Foundation_NSScriptWhoseTest", - "Foundation_NSSecureUnarchiveFromDataTransformer", + "Foundation_NSScriptWhoseTests", "Foundation_NSSet", - "Foundation_NSSetCommand", - "Foundation_NSSimpleCString", - "Foundation_NSSocketPort", - "Foundation_NSSocketPortNameServer", "Foundation_NSSortDescriptor", - "Foundation_NSSpecifierTest", "Foundation_NSSpellServer", "Foundation_NSStream", "Foundation_NSString", @@ -3039,180 +2018,119 @@ Foundation_all = [ "Foundation_NSURL", "Foundation_NSURLAuthenticationChallenge", "Foundation_NSURLCache", - "Foundation_NSURLComponents", "Foundation_NSURLConnection", "Foundation_NSURLCredential", "Foundation_NSURLCredentialStorage", "Foundation_NSURLDownload", + "Foundation_NSURLError", "Foundation_NSURLHandle", "Foundation_NSURLProtectionSpace", "Foundation_NSURLProtocol", - "Foundation_NSURLQueryItem", "Foundation_NSURLRequest", "Foundation_NSURLResponse", "Foundation_NSURLSession", - "Foundation_NSURLSessionConfiguration", - "Foundation_NSURLSessionDataTask", - "Foundation_NSURLSessionDownloadTask", - "Foundation_NSURLSessionStreamTask", - "Foundation_NSURLSessionTask", - "Foundation_NSURLSessionTaskMetrics", - "Foundation_NSURLSessionTaskTransactionMetrics", - "Foundation_NSURLSessionUploadTask", - "Foundation_NSURLSessionWebSocketMessage", - "Foundation_NSURLSessionWebSocketTask", "Foundation_NSUUID", "Foundation_NSUbiquitousKeyValueStore", - "Foundation_NSUnarchiver", "Foundation_NSUndoManager", - "Foundation_NSUniqueIDSpecifier", "Foundation_NSUnit", - "Foundation_NSUnitAcceleration", - "Foundation_NSUnitAngle", - "Foundation_NSUnitArea", - "Foundation_NSUnitConcentrationMass", - "Foundation_NSUnitConverter", - "Foundation_NSUnitConverterLinear", - "Foundation_NSUnitDispersion", - "Foundation_NSUnitDuration", - "Foundation_NSUnitElectricCharge", - "Foundation_NSUnitElectricCurrent", - "Foundation_NSUnitElectricPotentialDifference", - "Foundation_NSUnitElectricResistance", - "Foundation_NSUnitEnergy", - "Foundation_NSUnitFrequency", - "Foundation_NSUnitFuelEfficiency", - "Foundation_NSUnitIlluminance", - "Foundation_NSUnitInformationStorage", - "Foundation_NSUnitLength", - "Foundation_NSUnitMass", - "Foundation_NSUnitPower", - "Foundation_NSUnitPressure", - "Foundation_NSUnitSpeed", - "Foundation_NSUnitTemperature", - "Foundation_NSUnitVolume", "Foundation_NSUserActivity", - "Foundation_NSUserAppleScriptTask", - "Foundation_NSUserAutomatorTask", "Foundation_NSUserDefaults", "Foundation_NSUserNotification", - "Foundation_NSUserNotificationAction", - "Foundation_NSUserNotificationCenter", "Foundation_NSUserScriptTask", - "Foundation_NSUserUnixTask", "Foundation_NSValue", "Foundation_NSValueTransformer", - "Foundation_NSWhoseSpecifier", "Foundation_NSXMLDTD", "Foundation_NSXMLDTDNode", "Foundation_NSXMLDocument", "Foundation_NSXMLElement", "Foundation_NSXMLNode", + "Foundation_NSXMLNodeOptions", "Foundation_NSXMLParser", - "Foundation_NSXPCCoder", "Foundation_NSXPCConnection", - "Foundation_NSXPCInterface", - "Foundation_NSXPCListener", - "Foundation_NSXPCListenerEndpoint", + "Foundation_NSZone", ] GameController = [ "AppKit", "Foundation", ] +GameController_GCAxisElement = [] +GameController_GCAxisInput = [] +GameController_GCButtonElement = [] GameController_GCColor = [] GameController_GCController = [] -GameController_GCControllerAxisInput = [ - "GameController_GCControllerElement", -] -GameController_GCControllerButtonInput = [ - "GameController_GCControllerElement", -] -GameController_GCControllerDirectionPad = [ - "GameController_GCControllerElement", -] +GameController_GCControllerAxisInput = [] +GameController_GCControllerButtonInput = [] +GameController_GCControllerDirectionPad = [] GameController_GCControllerElement = [] -GameController_GCControllerInputState = [] -GameController_GCControllerLiveInput = [ - "GameController_GCControllerInputState", -] -GameController_GCControllerTouchpad = [ - "GameController_GCControllerElement", -] +GameController_GCControllerInput = [] +GameController_GCControllerTouchpad = [] +GameController_GCDevice = [] GameController_GCDeviceBattery = [] -GameController_GCDeviceCursor = [ - "GameController_GCControllerDirectionPad", -] +GameController_GCDeviceCursor = [] GameController_GCDeviceHaptics = [] GameController_GCDeviceLight = [] -GameController_GCDirectionalGamepad = [ - "GameController_GCMicroGamepad", -] -GameController_GCDualSenseAdaptiveTrigger = [ - "GameController_GCControllerButtonInput", -] -GameController_GCDualSenseGamepad = [ - "GameController_GCExtendedGamepad", -] -GameController_GCDualShockGamepad = [ - "GameController_GCExtendedGamepad", -] -GameController_GCEventViewController = [ - "AppKit_NSViewController", -] -GameController_GCExtendedGamepad = [ - "GameController_GCPhysicalInputProfile", -] -GameController_GCExtendedGamepadSnapshot = [ - "GameController_GCExtendedGamepad", -] -GameController_GCGamepad = [ - "GameController_GCPhysicalInputProfile", -] -GameController_GCGamepadSnapshot = [ - "GameController_GCGamepad", -] +GameController_GCDevicePhysicalInput = [] +GameController_GCDevicePhysicalInputState = [] +GameController_GCDevicePhysicalInputStateDiff = [] +GameController_GCDirectionPadElement = [] +GameController_GCDirectionalGamepad = [] +GameController_GCDualSenseAdaptiveTrigger = [] +GameController_GCDualSenseGamepad = [] +GameController_GCDualShockGamepad = [] +GameController_GCEventViewController = [] +GameController_GCExtendedGamepad = [] +GameController_GCExtendedGamepadSnapshot = [] +GameController_GCExtern = [] +GameController_GCGamepad = [] +GameController_GCGamepadSnapshot = [] GameController_GCGearShifterElement = [] +GameController_GCInputNames = [] +GameController_GCKeyCodes = [] +GameController_GCKeyNames = [] GameController_GCKeyboard = [] -GameController_GCKeyboardInput = [ - "GameController_GCPhysicalInputProfile", -] -GameController_GCMicroGamepad = [ - "GameController_GCPhysicalInputProfile", -] -GameController_GCMicroGamepadSnapshot = [ - "GameController_GCMicroGamepad", -] +GameController_GCKeyboardInput = [] +GameController_GCLinearInput = [] +GameController_GCMicroGamepad = [] +GameController_GCMicroGamepadSnapshot = [] GameController_GCMotion = [] GameController_GCMouse = [] -GameController_GCMouseInput = [ - "GameController_GCPhysicalInputProfile", -] -GameController_GCPhysicalInputElementCollection = [] +GameController_GCMouseInput = [] +GameController_GCPhysicalInputElement = [] GameController_GCPhysicalInputProfile = [] +GameController_GCPhysicalInputSource = [] +GameController_GCPressedStateInput = [] +GameController_GCProductCategories = [] GameController_GCRacingWheel = [] -GameController_GCRacingWheelInput = [ - "GameController_GCRacingWheelInputState", -] -GameController_GCRacingWheelInputState = [] +GameController_GCRacingWheelInput = [] +GameController_GCRelativeInput = [] GameController_GCSteeringWheelElement = [] -GameController_GCXboxGamepad = [ - "GameController_GCExtendedGamepad", -] +GameController_GCSwitchElement = [] +GameController_GCSwitchPositionInput = [] +GameController_GCSyntheticDeviceKeys = [] +GameController_GCTouchedStateInput = [] +GameController_GCXboxGamepad = [] GameController_all = [ "GameController", + "GameController_GCAxisElement", + "GameController_GCAxisInput", + "GameController_GCButtonElement", "GameController_GCColor", "GameController_GCController", "GameController_GCControllerAxisInput", "GameController_GCControllerButtonInput", "GameController_GCControllerDirectionPad", "GameController_GCControllerElement", - "GameController_GCControllerInputState", - "GameController_GCControllerLiveInput", + "GameController_GCControllerInput", "GameController_GCControllerTouchpad", + "GameController_GCDevice", "GameController_GCDeviceBattery", "GameController_GCDeviceCursor", "GameController_GCDeviceHaptics", "GameController_GCDeviceLight", + "GameController_GCDevicePhysicalInput", + "GameController_GCDevicePhysicalInputState", + "GameController_GCDevicePhysicalInputStateDiff", + "GameController_GCDirectionPadElement", "GameController_GCDirectionalGamepad", "GameController_GCDualSenseAdaptiveTrigger", "GameController_GCDualSenseGamepad", @@ -3220,22 +2138,34 @@ GameController_all = [ "GameController_GCEventViewController", "GameController_GCExtendedGamepad", "GameController_GCExtendedGamepadSnapshot", + "GameController_GCExtern", "GameController_GCGamepad", "GameController_GCGamepadSnapshot", "GameController_GCGearShifterElement", + "GameController_GCInputNames", + "GameController_GCKeyCodes", + "GameController_GCKeyNames", "GameController_GCKeyboard", "GameController_GCKeyboardInput", + "GameController_GCLinearInput", "GameController_GCMicroGamepad", "GameController_GCMicroGamepadSnapshot", "GameController_GCMotion", "GameController_GCMouse", "GameController_GCMouseInput", - "GameController_GCPhysicalInputElementCollection", + "GameController_GCPhysicalInputElement", "GameController_GCPhysicalInputProfile", + "GameController_GCPhysicalInputSource", + "GameController_GCPressedStateInput", + "GameController_GCProductCategories", "GameController_GCRacingWheel", "GameController_GCRacingWheelInput", - "GameController_GCRacingWheelInputState", + "GameController_GCRelativeInput", "GameController_GCSteeringWheelElement", + "GameController_GCSwitchElement", + "GameController_GCSwitchPositionInput", + "GameController_GCSyntheticDeviceKeys", + "GameController_GCTouchedStateInput", "GameController_GCXboxGamepad", ] GameKit = [ @@ -3244,75 +2174,50 @@ GameKit = [ ] GameKit_GKAccessPoint = [] GameKit_GKAchievement = [] -GameKit_GKAchievementChallenge = [ - "GameKit_GKChallenge", -] GameKit_GKAchievementDescription = [] -GameKit_GKAchievementViewController = [ - "GameKit_GKGameCenterViewController", -] +GameKit_GKAchievementViewController = [] GameKit_GKBasePlayer = [] GameKit_GKChallenge = [] GameKit_GKChallengeEventHandler = [] -GameKit_GKChallengesViewController = [ - "AppKit_NSViewController", -] -GameKit_GKCloudPlayer = [ - "GameKit_GKBasePlayer", -] -GameKit_GKDialogController = [ - "AppKit_NSResponder", -] -GameKit_GKFriendRequestComposeViewController = [ - "AppKit_NSViewController", -] -GameKit_GKGameCenterViewController = [ - "AppKit_NSViewController", -] +GameKit_GKChallengesViewController = [] +GameKit_GKCloudPlayer = [] +GameKit_GKDefines = [] +GameKit_GKDialogController = [] +GameKit_GKError = [] +GameKit_GKEventListener = [] +GameKit_GKFriendRequestComposeViewController = [] +GameKit_GKGameCenterViewController = [] GameKit_GKGameSession = [] -GameKit_GKInvite = [] +GameKit_GKGameSessionError = [] +GameKit_GKGameSessionEventListener = [] +GameKit_GKGameSessionSharingViewController = [] GameKit_GKLeaderboard = [] GameKit_GKLeaderboardEntry = [] GameKit_GKLeaderboardScore = [] GameKit_GKLeaderboardSet = [] -GameKit_GKLeaderboardViewController = [ - "GameKit_GKGameCenterViewController", -] -GameKit_GKLocalPlayer = [ - "GameKit_GKPlayer", -] +GameKit_GKLeaderboardViewController = [] +GameKit_GKLocalPlayer = [] GameKit_GKMatch = [] -GameKit_GKMatchRequest = [] -GameKit_GKMatchedPlayers = [] GameKit_GKMatchmaker = [] -GameKit_GKMatchmakerViewController = [ - "AppKit_NSViewController", -] +GameKit_GKMatchmakerViewController = [] GameKit_GKNotificationBanner = [] -GameKit_GKPlayer = [ - "GameKit_GKBasePlayer", -] +GameKit_GKPeerPickerController = [] +GameKit_GKPlayer = [] +GameKit_GKPublicConstants = [] +GameKit_GKPublicProtocols = [] GameKit_GKSavedGame = [] +GameKit_GKSavedGameListener = [] GameKit_GKScore = [] -GameKit_GKScoreChallenge = [ - "GameKit_GKChallenge", -] GameKit_GKSession = [] -GameKit_GKTurnBasedEventHandler = [] -GameKit_GKTurnBasedExchange = [] -GameKit_GKTurnBasedExchangeReply = [] +GameKit_GKSessionError = [] GameKit_GKTurnBasedMatch = [] -GameKit_GKTurnBasedMatchmakerViewController = [ - "AppKit_NSViewController", -] -GameKit_GKTurnBasedParticipant = [] +GameKit_GKTurnBasedMatchmakerViewController = [] GameKit_GKVoiceChat = [] GameKit_GKVoiceChatService = [] GameKit_all = [ "GameKit", "GameKit_GKAccessPoint", "GameKit_GKAchievement", - "GameKit_GKAchievementChallenge", "GameKit_GKAchievementDescription", "GameKit_GKAchievementViewController", "GameKit_GKBasePlayer", @@ -3320,11 +2225,16 @@ GameKit_all = [ "GameKit_GKChallengeEventHandler", "GameKit_GKChallengesViewController", "GameKit_GKCloudPlayer", + "GameKit_GKDefines", "GameKit_GKDialogController", + "GameKit_GKError", + "GameKit_GKEventListener", "GameKit_GKFriendRequestComposeViewController", "GameKit_GKGameCenterViewController", "GameKit_GKGameSession", - "GameKit_GKInvite", + "GameKit_GKGameSessionError", + "GameKit_GKGameSessionEventListener", + "GameKit_GKGameSessionSharingViewController", "GameKit_GKLeaderboard", "GameKit_GKLeaderboardEntry", "GameKit_GKLeaderboardScore", @@ -3332,22 +2242,20 @@ GameKit_all = [ "GameKit_GKLeaderboardViewController", "GameKit_GKLocalPlayer", "GameKit_GKMatch", - "GameKit_GKMatchRequest", - "GameKit_GKMatchedPlayers", "GameKit_GKMatchmaker", "GameKit_GKMatchmakerViewController", "GameKit_GKNotificationBanner", + "GameKit_GKPeerPickerController", "GameKit_GKPlayer", + "GameKit_GKPublicConstants", + "GameKit_GKPublicProtocols", "GameKit_GKSavedGame", + "GameKit_GKSavedGameListener", "GameKit_GKScore", - "GameKit_GKScoreChallenge", "GameKit_GKSession", - "GameKit_GKTurnBasedEventHandler", - "GameKit_GKTurnBasedExchange", - "GameKit_GKTurnBasedExchangeReply", + "GameKit_GKSessionError", "GameKit_GKTurnBasedMatch", "GameKit_GKTurnBasedMatchmakerViewController", - "GameKit_GKTurnBasedParticipant", "GameKit_GKVoiceChat", "GameKit_GKVoiceChatService", ] @@ -3356,241 +2264,116 @@ HealthKit = [ "Foundation", "UniformTypeIdentifiers", ] -HealthKit_HKActivityMoveModeObject = [] HealthKit_HKActivitySummary = [] -HealthKit_HKActivitySummaryQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKActivitySummaryType = [ - "HealthKit_HKObjectType", -] -HealthKit_HKAnchoredObjectQuery = [ - "HealthKit_HKQuery", -] +HealthKit_HKActivitySummaryQuery = [] +HealthKit_HKAnchoredObjectQuery = [] +HealthKit_HKAppleWalkingSteadinessClassification = [] HealthKit_HKAttachment = [] HealthKit_HKAttachmentStore = [] -HealthKit_HKAudiogramSample = [ - "HealthKit_HKSample", -] -HealthKit_HKAudiogramSampleType = [ - "HealthKit_HKSampleType", -] -HealthKit_HKAudiogramSensitivityPoint = [] -HealthKit_HKBiologicalSexObject = [] -HealthKit_HKBloodTypeObject = [] -HealthKit_HKCDADocument = [] -HealthKit_HKCDADocumentSample = [ - "HealthKit_HKDocumentSample", -] -HealthKit_HKCategorySample = [ - "HealthKit_HKSample", -] -HealthKit_HKCategoryType = [ - "HealthKit_HKSampleType", -] -HealthKit_HKCharacteristicType = [ - "HealthKit_HKObjectType", -] -HealthKit_HKClinicalRecord = [ - "HealthKit_HKSample", -] -HealthKit_HKClinicalType = [ - "HealthKit_HKSampleType", -] -HealthKit_HKContactsLensSpecification = [ - "HealthKit_HKLensSpecification", -] -HealthKit_HKContactsPrescription = [ - "HealthKit_HKVisionPrescription", -] -HealthKit_HKCorrelation = [ - "HealthKit_HKSample", -] -HealthKit_HKCorrelationQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKCorrelationType = [ - "HealthKit_HKSampleType", -] -HealthKit_HKCumulativeQuantitySample = [ - "HealthKit_HKQuantitySample", -] -HealthKit_HKCumulativeQuantitySeriesSample = [ - "HealthKit_HKCumulativeQuantitySample", -] +HealthKit_HKAudiogramSample = [] +HealthKit_HKCDADocumentSample = [] +HealthKit_HKCategorySample = [] +HealthKit_HKCategoryValues = [] +HealthKit_HKCharacteristicObjects = [] +HealthKit_HKCharacteristicValues = [] +HealthKit_HKClinicalRecord = [] +HealthKit_HKClinicalType = [] +HealthKit_HKContactsLensSpecification = [] +HealthKit_HKContactsPrescription = [] +HealthKit_HKCorrelation = [] +HealthKit_HKCorrelationQuery = [] +HealthKit_HKCumulativeQuantitySample = [] +HealthKit_HKCumulativeQuantitySeriesSample = [] +HealthKit_HKDefines = [] HealthKit_HKDeletedObject = [] HealthKit_HKDevice = [] -HealthKit_HKDiscreteQuantitySample = [ - "HealthKit_HKQuantitySample", -] -HealthKit_HKDocumentQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKDocumentSample = [ - "HealthKit_HKSample", -] -HealthKit_HKDocumentType = [ - "HealthKit_HKSampleType", -] -HealthKit_HKElectrocardiogram = [ - "HealthKit_HKSample", -] -HealthKit_HKElectrocardiogramQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKElectrocardiogramType = [ - "HealthKit_HKSampleType", -] -HealthKit_HKElectrocardiogramVoltageMeasurement = [] +HealthKit_HKDiscreteQuantitySample = [] +HealthKit_HKDocumentQuery = [] +HealthKit_HKDocumentSample = [] +HealthKit_HKElectrocardiogram = [] +HealthKit_HKElectrocardiogramQuery = [] +HealthKit_HKFHIRRelease = [] HealthKit_HKFHIRResource = [] HealthKit_HKFHIRVersion = [] -HealthKit_HKFitzpatrickSkinTypeObject = [] -HealthKit_HKGlassesLensSpecification = [ - "HealthKit_HKLensSpecification", -] -HealthKit_HKGlassesPrescription = [ - "HealthKit_HKVisionPrescription", -] +HealthKit_HKGlassesLensSpecification = [] +HealthKit_HKGlassesPrescription = [] HealthKit_HKHealthStore = [] -HealthKit_HKHeartbeatSeriesBuilder = [ - "HealthKit_HKSeriesBuilder", -] -HealthKit_HKHeartbeatSeriesQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKHeartbeatSeriesSample = [ - "HealthKit_HKSeriesSample", -] +HealthKit_HKHeartbeatSeriesBuilder = [] +HealthKit_HKHeartbeatSeriesQuery = [] +HealthKit_HKHeartbeatSeriesSample = [] HealthKit_HKLensSpecification = [] -HealthKit_HKLiveWorkoutBuilder = [ - "HealthKit_HKWorkoutBuilder", -] +HealthKit_HKLiveWorkoutBuilder = [] HealthKit_HKLiveWorkoutDataSource = [] +HealthKit_HKMetadata = [] HealthKit_HKObject = [] HealthKit_HKObjectType = [] -HealthKit_HKObserverQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKPrescriptionType = [ - "HealthKit_HKSampleType", -] +HealthKit_HKObserverQuery = [] HealthKit_HKQuantity = [] -HealthKit_HKQuantitySample = [ - "HealthKit_HKSample", -] +HealthKit_HKQuantityAggregationStyle = [] +HealthKit_HKQuantitySample = [] HealthKit_HKQuantitySeriesSampleBuilder = [] -HealthKit_HKQuantitySeriesSampleQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKQuantityType = [ - "HealthKit_HKSampleType", -] +HealthKit_HKQuantitySeriesSampleQuery = [] HealthKit_HKQuery = [] HealthKit_HKQueryAnchor = [] HealthKit_HKQueryDescriptor = [] -HealthKit_HKSample = [ - "HealthKit_HKObject", -] -HealthKit_HKSampleQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKSampleType = [ - "HealthKit_HKObjectType", -] +HealthKit_HKSample = [] +HealthKit_HKSampleQuery = [] HealthKit_HKSeriesBuilder = [] -HealthKit_HKSeriesSample = [ - "HealthKit_HKSample", -] -HealthKit_HKSeriesType = [ - "HealthKit_HKSampleType", -] +HealthKit_HKSeriesSample = [] HealthKit_HKSource = [] -HealthKit_HKSourceQuery = [ - "HealthKit_HKQuery", -] +HealthKit_HKSourceQuery = [] HealthKit_HKSourceRevision = [] HealthKit_HKStatistics = [] -HealthKit_HKStatisticsCollection = [] -HealthKit_HKStatisticsCollectionQuery = [ - "HealthKit_HKQuery", -] -HealthKit_HKStatisticsQuery = [ - "HealthKit_HKQuery", -] +HealthKit_HKStatisticsCollectionQuery = [] +HealthKit_HKStatisticsQuery = [] +HealthKit_HKTypeIdentifiers = [] HealthKit_HKUnit = [] -HealthKit_HKVerifiableClinicalRecord = [ - "HealthKit_HKSample", -] -HealthKit_HKVerifiableClinicalRecordQuery = [ - "HealthKit_HKQuery", -] +HealthKit_HKVerifiableClinicalRecord = [] +HealthKit_HKVerifiableClinicalRecordQuery = [] HealthKit_HKVerifiableClinicalRecordSubject = [] -HealthKit_HKVisionPrescription = [ - "HealthKit_HKSample", -] +HealthKit_HKVisionPrescription = [] HealthKit_HKVisionPrism = [] -HealthKit_HKWheelchairUseObject = [] -HealthKit_HKWorkout = [ - "HealthKit_HKSample", -] +HealthKit_HKWorkout = [] HealthKit_HKWorkoutActivity = [] HealthKit_HKWorkoutBuilder = [] HealthKit_HKWorkoutConfiguration = [] -HealthKit_HKWorkoutEvent = [] -HealthKit_HKWorkoutRoute = [ - "HealthKit_HKSeriesSample", -] -HealthKit_HKWorkoutRouteBuilder = [ - "HealthKit_HKSeriesBuilder", -] -HealthKit_HKWorkoutRouteQuery = [ - "HealthKit_HKQuery", -] +HealthKit_HKWorkoutRoute = [] +HealthKit_HKWorkoutRouteBuilder = [] +HealthKit_HKWorkoutRouteQuery = [] HealthKit_HKWorkoutSession = [] -HealthKit_HKWorkoutType = [ - "HealthKit_HKSampleType", -] HealthKit_all = [ "HealthKit", - "HealthKit_HKActivityMoveModeObject", "HealthKit_HKActivitySummary", "HealthKit_HKActivitySummaryQuery", - "HealthKit_HKActivitySummaryType", "HealthKit_HKAnchoredObjectQuery", + "HealthKit_HKAppleWalkingSteadinessClassification", "HealthKit_HKAttachment", "HealthKit_HKAttachmentStore", "HealthKit_HKAudiogramSample", - "HealthKit_HKAudiogramSampleType", - "HealthKit_HKAudiogramSensitivityPoint", - "HealthKit_HKBiologicalSexObject", - "HealthKit_HKBloodTypeObject", - "HealthKit_HKCDADocument", "HealthKit_HKCDADocumentSample", "HealthKit_HKCategorySample", - "HealthKit_HKCategoryType", - "HealthKit_HKCharacteristicType", + "HealthKit_HKCategoryValues", + "HealthKit_HKCharacteristicObjects", + "HealthKit_HKCharacteristicValues", "HealthKit_HKClinicalRecord", "HealthKit_HKClinicalType", "HealthKit_HKContactsLensSpecification", "HealthKit_HKContactsPrescription", "HealthKit_HKCorrelation", "HealthKit_HKCorrelationQuery", - "HealthKit_HKCorrelationType", "HealthKit_HKCumulativeQuantitySample", "HealthKit_HKCumulativeQuantitySeriesSample", + "HealthKit_HKDefines", "HealthKit_HKDeletedObject", "HealthKit_HKDevice", "HealthKit_HKDiscreteQuantitySample", "HealthKit_HKDocumentQuery", "HealthKit_HKDocumentSample", - "HealthKit_HKDocumentType", "HealthKit_HKElectrocardiogram", "HealthKit_HKElectrocardiogramQuery", - "HealthKit_HKElectrocardiogramType", - "HealthKit_HKElectrocardiogramVoltageMeasurement", + "HealthKit_HKFHIRRelease", "HealthKit_HKFHIRResource", "HealthKit_HKFHIRVersion", - "HealthKit_HKFitzpatrickSkinTypeObject", "HealthKit_HKGlassesLensSpecification", "HealthKit_HKGlassesPrescription", "HealthKit_HKHealthStore", @@ -3600,89 +2383,86 @@ HealthKit_all = [ "HealthKit_HKLensSpecification", "HealthKit_HKLiveWorkoutBuilder", "HealthKit_HKLiveWorkoutDataSource", + "HealthKit_HKMetadata", "HealthKit_HKObject", "HealthKit_HKObjectType", "HealthKit_HKObserverQuery", - "HealthKit_HKPrescriptionType", "HealthKit_HKQuantity", + "HealthKit_HKQuantityAggregationStyle", "HealthKit_HKQuantitySample", "HealthKit_HKQuantitySeriesSampleBuilder", "HealthKit_HKQuantitySeriesSampleQuery", - "HealthKit_HKQuantityType", "HealthKit_HKQuery", "HealthKit_HKQueryAnchor", "HealthKit_HKQueryDescriptor", "HealthKit_HKSample", "HealthKit_HKSampleQuery", - "HealthKit_HKSampleType", "HealthKit_HKSeriesBuilder", "HealthKit_HKSeriesSample", - "HealthKit_HKSeriesType", "HealthKit_HKSource", "HealthKit_HKSourceQuery", "HealthKit_HKSourceRevision", "HealthKit_HKStatistics", - "HealthKit_HKStatisticsCollection", "HealthKit_HKStatisticsCollectionQuery", "HealthKit_HKStatisticsQuery", + "HealthKit_HKTypeIdentifiers", "HealthKit_HKUnit", "HealthKit_HKVerifiableClinicalRecord", "HealthKit_HKVerifiableClinicalRecordQuery", "HealthKit_HKVerifiableClinicalRecordSubject", "HealthKit_HKVisionPrescription", "HealthKit_HKVisionPrism", - "HealthKit_HKWheelchairUseObject", "HealthKit_HKWorkout", "HealthKit_HKWorkoutActivity", "HealthKit_HKWorkoutBuilder", "HealthKit_HKWorkoutConfiguration", - "HealthKit_HKWorkoutEvent", "HealthKit_HKWorkoutRoute", "HealthKit_HKWorkoutRouteBuilder", "HealthKit_HKWorkoutRouteQuery", "HealthKit_HKWorkoutSession", - "HealthKit_HKWorkoutType", ] IdentityLookup = [ "Foundation", ] -IdentityLookup_ILCallClassificationRequest = [ - "IdentityLookup_ILClassificationRequest", -] -IdentityLookup_ILCallCommunication = [ - "IdentityLookup_ILCommunication", -] +IdentityLookup_ILBase = [] +IdentityLookup_ILCallClassificationRequest = [] +IdentityLookup_ILCallCommunication = [] +IdentityLookup_ILClassificationActions = [] IdentityLookup_ILClassificationRequest = [] IdentityLookup_ILClassificationResponse = [] IdentityLookup_ILCommunication = [] -IdentityLookup_ILMessageClassificationRequest = [ - "IdentityLookup_ILClassificationRequest", -] -IdentityLookup_ILMessageCommunication = [ - "IdentityLookup_ILCommunication", -] +IdentityLookup_ILMessageClassificationRequest = [] +IdentityLookup_ILMessageCommunication = [] +IdentityLookup_ILMessageFilterAction = [] +IdentityLookup_ILMessageFilterCapabilitiesQueryHandling = [] IdentityLookup_ILMessageFilterCapabilitiesQueryRequest = [] IdentityLookup_ILMessageFilterCapabilitiesQueryResponse = [] +IdentityLookup_ILMessageFilterError = [] IdentityLookup_ILMessageFilterExtension = [] -IdentityLookup_ILMessageFilterExtensionContext = [ - "Foundation_NSExtensionContext", -] +IdentityLookup_ILMessageFilterExtensionContext = [] +IdentityLookup_ILMessageFilterQueryHandling = [] IdentityLookup_ILMessageFilterQueryRequest = [] IdentityLookup_ILMessageFilterQueryResponse = [] IdentityLookup_ILNetworkResponse = [] IdentityLookup_all = [ "IdentityLookup", + "IdentityLookup_ILBase", "IdentityLookup_ILCallClassificationRequest", "IdentityLookup_ILCallCommunication", + "IdentityLookup_ILClassificationActions", "IdentityLookup_ILClassificationRequest", "IdentityLookup_ILClassificationResponse", "IdentityLookup_ILCommunication", "IdentityLookup_ILMessageClassificationRequest", "IdentityLookup_ILMessageCommunication", + "IdentityLookup_ILMessageFilterAction", + "IdentityLookup_ILMessageFilterCapabilitiesQueryHandling", "IdentityLookup_ILMessageFilterCapabilitiesQueryRequest", "IdentityLookup_ILMessageFilterCapabilitiesQueryResponse", + "IdentityLookup_ILMessageFilterError", "IdentityLookup_ILMessageFilterExtension", "IdentityLookup_ILMessageFilterExtensionContext", + "IdentityLookup_ILMessageFilterQueryHandling", "IdentityLookup_ILMessageFilterQueryRequest", "IdentityLookup_ILMessageFilterQueryResponse", "IdentityLookup_ILNetworkResponse", @@ -3691,9 +2471,7 @@ InputMethodKit = [ "AppKit", "Foundation", ] -InputMethodKit_IMKCandidates = [ - "AppKit_NSResponder", -] +InputMethodKit_IMKCandidates = [] InputMethodKit_IMKInputController = [] InputMethodKit_IMKServer = [] InputMethodKit_all = [ @@ -3706,13 +2484,15 @@ LinkPresentation = [ "AppKit", "Foundation", ] +LinkPresentation_LPError = [] +LinkPresentation_LPFoundation = [] LinkPresentation_LPLinkMetadata = [] -LinkPresentation_LPLinkView = [ - "AppKit_NSView", -] +LinkPresentation_LPLinkView = [] LinkPresentation_LPMetadataProvider = [] LinkPresentation_all = [ "LinkPresentation", + "LinkPresentation_LPError", + "LinkPresentation_LPFoundation", "LinkPresentation_LPLinkMetadata", "LinkPresentation_LPLinkView", "LinkPresentation_LPMetadataProvider", @@ -3725,32 +2505,36 @@ LocalAuthenticationEmbeddedUI = [ "Foundation", "LocalAuthentication", ] -LocalAuthenticationEmbeddedUI_LAAuthenticationView = [ - "AppKit_NSView", -] +LocalAuthenticationEmbeddedUI_LAAuthenticationView = [] +LocalAuthenticationEmbeddedUI_LAPresentationContext = [] +LocalAuthenticationEmbeddedUI_LARight_UI = [] LocalAuthenticationEmbeddedUI_all = [ "LocalAuthenticationEmbeddedUI", "LocalAuthenticationEmbeddedUI_LAAuthenticationView", + "LocalAuthenticationEmbeddedUI_LAPresentationContext", + "LocalAuthenticationEmbeddedUI_LARight_UI", ] -LocalAuthentication_LAAuthenticationRequirement = [] -LocalAuthentication_LABiometryFallbackRequirement = [] +LocalAuthentication_LABase = [] LocalAuthentication_LAContext = [] -LocalAuthentication_LAPersistedRight = [ - "LocalAuthentication_LARight", -] +LocalAuthentication_LAError = [] +LocalAuthentication_LAPersistedRight = [] LocalAuthentication_LAPrivateKey = [] +LocalAuthentication_LAPublicDefines = [] LocalAuthentication_LAPublicKey = [] +LocalAuthentication_LARequirement = [] LocalAuthentication_LARight = [] LocalAuthentication_LARightStore = [] LocalAuthentication_LASecret = [] LocalAuthentication_all = [ "LocalAuthentication", - "LocalAuthentication_LAAuthenticationRequirement", - "LocalAuthentication_LABiometryFallbackRequirement", + "LocalAuthentication_LABase", "LocalAuthentication_LAContext", + "LocalAuthentication_LAError", "LocalAuthentication_LAPersistedRight", "LocalAuthentication_LAPrivateKey", + "LocalAuthentication_LAPublicDefines", "LocalAuthentication_LAPublicKey", + "LocalAuthentication_LARequirement", "LocalAuthentication_LARight", "LocalAuthentication_LARightStore", "LocalAuthentication_LASecret", @@ -3762,18 +2546,22 @@ MailKit = [ MailKit_MEAddressAnnotation = [] MailKit_MEComposeContext = [] MailKit_MEComposeSession = [] +MailKit_MEContentBlocker = [] MailKit_MEDecodedMessage = [] MailKit_MEDecodedMessageBanner = [] MailKit_MEEmailAddress = [] MailKit_MEEncodedOutgoingMessage = [] +MailKit_MEExtension = [] MailKit_MEExtensionManager = [] -MailKit_MEExtensionViewController = [ - "AppKit_NSViewController", -] +MailKit_MEExtensionViewController = [] MailKit_MEMessage = [] MailKit_MEMessageAction = [] MailKit_MEMessageActionDecision = [] +MailKit_MEMessageActionHandler = [] +MailKit_MEMessageDecoder = [] +MailKit_MEMessageEncoder = [] MailKit_MEMessageEncodingResult = [] +MailKit_MEMessageSecurityHandler = [] MailKit_MEMessageSecurityInformation = [] MailKit_MEMessageSigner = [] MailKit_MEOutgoingMessageEncodingStatus = [] @@ -3782,16 +2570,22 @@ MailKit_all = [ "MailKit_MEAddressAnnotation", "MailKit_MEComposeContext", "MailKit_MEComposeSession", + "MailKit_MEContentBlocker", "MailKit_MEDecodedMessage", "MailKit_MEDecodedMessageBanner", "MailKit_MEEmailAddress", "MailKit_MEEncodedOutgoingMessage", + "MailKit_MEExtension", "MailKit_MEExtensionManager", "MailKit_MEExtensionViewController", "MailKit_MEMessage", "MailKit_MEMessageAction", "MailKit_MEMessageActionDecision", + "MailKit_MEMessageActionHandler", + "MailKit_MEMessageDecoder", + "MailKit_MEMessageEncoder", "MailKit_MEMessageEncodingResult", + "MailKit_MEMessageSecurityHandler", "MailKit_MEMessageSecurityInformation", "MailKit_MEMessageSigner", "MailKit_MEOutgoingMessageEncodingStatus", @@ -3802,44 +2596,27 @@ MapKit = [ "CoreLocation", "Foundation", ] -MapKit_MKAnnotationView = [ - "AppKit_NSView", -] -MapKit_MKCircle = [ - "MapKit_MKShape", -] -MapKit_MKCircleRenderer = [ - "MapKit_MKOverlayPathRenderer", -] +MapKit_MKAnnotation = [] +MapKit_MKAnnotationView = [] +MapKit_MKCircle = [] +MapKit_MKCircleRenderer = [] MapKit_MKClusterAnnotation = [] -MapKit_MKCompassButton = [ - "AppKit_NSView", -] +MapKit_MKCompassButton = [] MapKit_MKDirections = [] MapKit_MKDirectionsRequest = [] MapKit_MKDirectionsResponse = [] -MapKit_MKDistanceFormatter = [ - "Foundation_NSFormatter", -] -MapKit_MKETAResponse = [] -MapKit_MKGeoJSONDecoder = [] -MapKit_MKGeoJSONFeature = [] -MapKit_MKGeodesicPolyline = [ - "MapKit_MKPolyline", -] -MapKit_MKGradientPolylineRenderer = [ - "MapKit_MKPolylineRenderer", -] -MapKit_MKHybridMapConfiguration = [ - "MapKit_MKMapConfiguration", -] -MapKit_MKImageryMapConfiguration = [ - "MapKit_MKMapConfiguration", -] +MapKit_MKDirectionsTypes = [] +MapKit_MKDistanceFormatter = [] +MapKit_MKFoundation = [] +MapKit_MKGeoJSONSerialization = [] +MapKit_MKGeodesicPolyline = [] +MapKit_MKGeometry = [] +MapKit_MKGradientPolylineRenderer = [] +MapKit_MKHybridMapConfiguration = [] +MapKit_MKImageryMapConfiguration = [] MapKit_MKLocalPointsOfInterestRequest = [] MapKit_MKLocalSearch = [] MapKit_MKLocalSearchCompleter = [] -MapKit_MKLocalSearchCompletion = [] MapKit_MKLocalSearchRequest = [] MapKit_MKLocalSearchResponse = [] MapKit_MKLookAroundScene = [] @@ -3847,9 +2624,7 @@ MapKit_MKLookAroundSceneRequest = [] MapKit_MKLookAroundSnapshot = [] MapKit_MKLookAroundSnapshotOptions = [] MapKit_MKLookAroundSnapshotter = [] -MapKit_MKLookAroundViewController = [ - "AppKit_NSViewController", -] +MapKit_MKLookAroundViewController = [] MapKit_MKMapCamera = [] MapKit_MKMapCameraBoundary = [] MapKit_MKMapCameraZoomRange = [] @@ -3858,75 +2633,38 @@ MapKit_MKMapItem = [] MapKit_MKMapSnapshot = [] MapKit_MKMapSnapshotOptions = [] MapKit_MKMapSnapshotter = [] -MapKit_MKMapView = [ - "AppKit_NSView", -] -MapKit_MKMarkerAnnotationView = [ - "MapKit_MKAnnotationView", -] -MapKit_MKMultiPoint = [ - "MapKit_MKShape", -] -MapKit_MKMultiPolygon = [ - "MapKit_MKShape", -] -MapKit_MKMultiPolygonRenderer = [ - "MapKit_MKOverlayPathRenderer", -] -MapKit_MKMultiPolyline = [ - "MapKit_MKShape", -] -MapKit_MKMultiPolylineRenderer = [ - "MapKit_MKOverlayPathRenderer", -] -MapKit_MKOverlayPathRenderer = [ - "MapKit_MKOverlayRenderer", -] +MapKit_MKMapView = [] +MapKit_MKMarkerAnnotationView = [] +MapKit_MKMultiPoint = [] +MapKit_MKMultiPolygon = [] +MapKit_MKMultiPolygonRenderer = [] +MapKit_MKMultiPolyline = [] +MapKit_MKMultiPolylineRenderer = [] +MapKit_MKOverlay = [] +MapKit_MKOverlayPathRenderer = [] MapKit_MKOverlayRenderer = [] -MapKit_MKPinAnnotationView = [ - "MapKit_MKAnnotationView", -] -MapKit_MKPitchControl = [ - "AppKit_NSView", -] -MapKit_MKPlacemark = [ - "CoreLocation_CLPlacemark", -] -MapKit_MKPointAnnotation = [ - "MapKit_MKShape", -] +MapKit_MKPinAnnotationView = [] +MapKit_MKPitchControl = [] +MapKit_MKPlacemark = [] +MapKit_MKPointAnnotation = [] +MapKit_MKPointOfInterestCategory = [] MapKit_MKPointOfInterestFilter = [] -MapKit_MKPolygon = [ - "MapKit_MKMultiPoint", -] -MapKit_MKPolygonRenderer = [ - "MapKit_MKOverlayPathRenderer", -] -MapKit_MKPolyline = [ - "MapKit_MKMultiPoint", -] -MapKit_MKPolylineRenderer = [ - "MapKit_MKOverlayPathRenderer", -] -MapKit_MKRoute = [] -MapKit_MKRouteStep = [] +MapKit_MKPolygon = [] +MapKit_MKPolygonRenderer = [] +MapKit_MKPolyline = [] +MapKit_MKPolylineRenderer = [] MapKit_MKShape = [] -MapKit_MKStandardMapConfiguration = [ - "MapKit_MKMapConfiguration", -] +MapKit_MKStandardMapConfiguration = [] MapKit_MKTileOverlay = [] -MapKit_MKTileOverlayRenderer = [ - "MapKit_MKOverlayRenderer", -] +MapKit_MKTileOverlayRenderer = [] +MapKit_MKTypes = [] MapKit_MKUserLocation = [] -MapKit_MKUserLocationView = [ - "MapKit_MKAnnotationView", -] -MapKit_MKZoomControl = [ - "AppKit_NSView", -] +MapKit_MKUserLocationView = [] +MapKit_MKZoomControl = [] +MapKit_NSUserActivity_MKMapItem = [] MapKit_all = [ "MapKit", + "MapKit_MKAnnotation", "MapKit_MKAnnotationView", "MapKit_MKCircle", "MapKit_MKCircleRenderer", @@ -3935,18 +2673,18 @@ MapKit_all = [ "MapKit_MKDirections", "MapKit_MKDirectionsRequest", "MapKit_MKDirectionsResponse", + "MapKit_MKDirectionsTypes", "MapKit_MKDistanceFormatter", - "MapKit_MKETAResponse", - "MapKit_MKGeoJSONDecoder", - "MapKit_MKGeoJSONFeature", + "MapKit_MKFoundation", + "MapKit_MKGeoJSONSerialization", "MapKit_MKGeodesicPolyline", + "MapKit_MKGeometry", "MapKit_MKGradientPolylineRenderer", "MapKit_MKHybridMapConfiguration", "MapKit_MKImageryMapConfiguration", "MapKit_MKLocalPointsOfInterestRequest", "MapKit_MKLocalSearch", "MapKit_MKLocalSearchCompleter", - "MapKit_MKLocalSearchCompletion", "MapKit_MKLocalSearchRequest", "MapKit_MKLocalSearchResponse", "MapKit_MKLookAroundScene", @@ -3970,177 +2708,101 @@ MapKit_all = [ "MapKit_MKMultiPolygonRenderer", "MapKit_MKMultiPolyline", "MapKit_MKMultiPolylineRenderer", + "MapKit_MKOverlay", "MapKit_MKOverlayPathRenderer", "MapKit_MKOverlayRenderer", "MapKit_MKPinAnnotationView", "MapKit_MKPitchControl", "MapKit_MKPlacemark", "MapKit_MKPointAnnotation", + "MapKit_MKPointOfInterestCategory", "MapKit_MKPointOfInterestFilter", "MapKit_MKPolygon", "MapKit_MKPolygonRenderer", "MapKit_MKPolyline", "MapKit_MKPolylineRenderer", - "MapKit_MKRoute", - "MapKit_MKRouteStep", "MapKit_MKShape", "MapKit_MKStandardMapConfiguration", "MapKit_MKTileOverlay", "MapKit_MKTileOverlayRenderer", + "MapKit_MKTypes", "MapKit_MKUserLocation", "MapKit_MKUserLocationView", "MapKit_MKZoomControl", + "MapKit_NSUserActivity_MKMapItem", ] MediaPlayer = [ "AppKit", "Foundation", ] -MediaPlayer_MPAdTimeRange = [] -MediaPlayer_MPChangeLanguageOptionCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] -MediaPlayer_MPChangePlaybackPositionCommand = [ - "MediaPlayer_MPRemoteCommand", -] -MediaPlayer_MPChangePlaybackPositionCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] -MediaPlayer_MPChangePlaybackRateCommand = [ - "MediaPlayer_MPRemoteCommand", -] -MediaPlayer_MPChangePlaybackRateCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] -MediaPlayer_MPChangeRepeatModeCommand = [ - "MediaPlayer_MPRemoteCommand", -] -MediaPlayer_MPChangeRepeatModeCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] -MediaPlayer_MPChangeShuffleModeCommand = [ - "MediaPlayer_MPRemoteCommand", -] -MediaPlayer_MPChangeShuffleModeCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] +MediaPlayer_AVFoundation_MPNowPlayingInfoLanguageOptionAdditions = [] +MediaPlayer_AVPlayerItem_MediaPlayerAdditions = [] MediaPlayer_MPContentItem = [] -MediaPlayer_MPFeedbackCommand = [ - "MediaPlayer_MPRemoteCommand", -] -MediaPlayer_MPFeedbackCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] +MediaPlayer_MPError = [] MediaPlayer_MPMediaEntity = [] -MediaPlayer_MPMediaItem = [ - "MediaPlayer_MPMediaEntity", -] -MediaPlayer_MPMediaItemArtwork = [] -MediaPlayer_MPMediaItemCollection = [ - "MediaPlayer_MPMediaEntity", -] +MediaPlayer_MPMediaItem = [] +MediaPlayer_MPMediaItemCollection = [] MediaPlayer_MPMediaLibrary = [] -MediaPlayer_MPMediaPlaylist = [ - "MediaPlayer_MPMediaItemCollection", -] -MediaPlayer_MPMediaPlaylistCreationMetadata = [] -MediaPlayer_MPMediaPredicate = [] -MediaPlayer_MPMediaPropertyPredicate = [ - "MediaPlayer_MPMediaPredicate", -] +MediaPlayer_MPMediaPickerController = [] +MediaPlayer_MPMediaPlayback = [] +MediaPlayer_MPMediaPlaylist = [] MediaPlayer_MPMediaQuery = [] MediaPlayer_MPMediaQuerySection = [] -MediaPlayer_MPMusicPlayerApplicationController = [ - "MediaPlayer_MPMusicPlayerController", -] +MediaPlayer_MPMoviePlayerController = [] +MediaPlayer_MPMoviePlayerViewController = [] +MediaPlayer_MPMusicPlayerApplicationController = [] MediaPlayer_MPMusicPlayerController = [] -MediaPlayer_MPMusicPlayerControllerMutableQueue = [ - "MediaPlayer_MPMusicPlayerControllerQueue", -] -MediaPlayer_MPMusicPlayerControllerQueue = [] -MediaPlayer_MPMusicPlayerMediaItemQueueDescriptor = [ - "MediaPlayer_MPMusicPlayerQueueDescriptor", -] -MediaPlayer_MPMusicPlayerPlayParameters = [] -MediaPlayer_MPMusicPlayerPlayParametersQueueDescriptor = [ - "MediaPlayer_MPMusicPlayerQueueDescriptor", -] MediaPlayer_MPMusicPlayerQueueDescriptor = [] -MediaPlayer_MPMusicPlayerStoreQueueDescriptor = [ - "MediaPlayer_MPMusicPlayerQueueDescriptor", -] MediaPlayer_MPNowPlayingInfoCenter = [] MediaPlayer_MPNowPlayingInfoLanguageOption = [] -MediaPlayer_MPNowPlayingInfoLanguageOptionGroup = [] MediaPlayer_MPNowPlayingSession = [] +MediaPlayer_MPPlayableContentDataSource = [] +MediaPlayer_MPPlayableContentDelegate = [] MediaPlayer_MPPlayableContentManager = [] MediaPlayer_MPPlayableContentManagerContext = [] -MediaPlayer_MPRatingCommand = [ - "MediaPlayer_MPRemoteCommand", -] -MediaPlayer_MPRatingCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] MediaPlayer_MPRemoteCommand = [] MediaPlayer_MPRemoteCommandCenter = [] MediaPlayer_MPRemoteCommandEvent = [] -MediaPlayer_MPSeekCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] -MediaPlayer_MPSkipIntervalCommand = [ - "MediaPlayer_MPRemoteCommand", -] -MediaPlayer_MPSkipIntervalCommandEvent = [ - "MediaPlayer_MPRemoteCommandEvent", -] +MediaPlayer_MPRemoteControlTypes = [] +MediaPlayer_MPVolumeSettings = [] +MediaPlayer_MPVolumeView = [] +MediaPlayer_MediaPlayerDefines = [] +MediaPlayer_NSUserActivity_MediaPlayerAdditions = [] MediaPlayer_all = [ "MediaPlayer", - "MediaPlayer_MPAdTimeRange", - "MediaPlayer_MPChangeLanguageOptionCommandEvent", - "MediaPlayer_MPChangePlaybackPositionCommand", - "MediaPlayer_MPChangePlaybackPositionCommandEvent", - "MediaPlayer_MPChangePlaybackRateCommand", - "MediaPlayer_MPChangePlaybackRateCommandEvent", - "MediaPlayer_MPChangeRepeatModeCommand", - "MediaPlayer_MPChangeRepeatModeCommandEvent", - "MediaPlayer_MPChangeShuffleModeCommand", - "MediaPlayer_MPChangeShuffleModeCommandEvent", + "MediaPlayer_AVFoundation_MPNowPlayingInfoLanguageOptionAdditions", + "MediaPlayer_AVPlayerItem_MediaPlayerAdditions", "MediaPlayer_MPContentItem", - "MediaPlayer_MPFeedbackCommand", - "MediaPlayer_MPFeedbackCommandEvent", + "MediaPlayer_MPError", "MediaPlayer_MPMediaEntity", "MediaPlayer_MPMediaItem", - "MediaPlayer_MPMediaItemArtwork", "MediaPlayer_MPMediaItemCollection", "MediaPlayer_MPMediaLibrary", + "MediaPlayer_MPMediaPickerController", + "MediaPlayer_MPMediaPlayback", "MediaPlayer_MPMediaPlaylist", - "MediaPlayer_MPMediaPlaylistCreationMetadata", - "MediaPlayer_MPMediaPredicate", - "MediaPlayer_MPMediaPropertyPredicate", "MediaPlayer_MPMediaQuery", "MediaPlayer_MPMediaQuerySection", + "MediaPlayer_MPMoviePlayerController", + "MediaPlayer_MPMoviePlayerViewController", "MediaPlayer_MPMusicPlayerApplicationController", "MediaPlayer_MPMusicPlayerController", - "MediaPlayer_MPMusicPlayerControllerMutableQueue", - "MediaPlayer_MPMusicPlayerControllerQueue", - "MediaPlayer_MPMusicPlayerMediaItemQueueDescriptor", - "MediaPlayer_MPMusicPlayerPlayParameters", - "MediaPlayer_MPMusicPlayerPlayParametersQueueDescriptor", "MediaPlayer_MPMusicPlayerQueueDescriptor", - "MediaPlayer_MPMusicPlayerStoreQueueDescriptor", "MediaPlayer_MPNowPlayingInfoCenter", "MediaPlayer_MPNowPlayingInfoLanguageOption", - "MediaPlayer_MPNowPlayingInfoLanguageOptionGroup", "MediaPlayer_MPNowPlayingSession", + "MediaPlayer_MPPlayableContentDataSource", + "MediaPlayer_MPPlayableContentDelegate", "MediaPlayer_MPPlayableContentManager", "MediaPlayer_MPPlayableContentManagerContext", - "MediaPlayer_MPRatingCommand", - "MediaPlayer_MPRatingCommandEvent", "MediaPlayer_MPRemoteCommand", "MediaPlayer_MPRemoteCommandCenter", "MediaPlayer_MPRemoteCommandEvent", - "MediaPlayer_MPSeekCommandEvent", - "MediaPlayer_MPSkipIntervalCommand", - "MediaPlayer_MPSkipIntervalCommandEvent", + "MediaPlayer_MPRemoteControlTypes", + "MediaPlayer_MPVolumeSettings", + "MediaPlayer_MPVolumeView", + "MediaPlayer_MediaPlayerDefines", + "MediaPlayer_NSUserActivity_MediaPlayerAdditions", ] Metal = [ "Foundation", @@ -4149,349 +2811,179 @@ MetalFX = [ "Foundation", "Metal", ] -MetalFX_MTLFXSpatialScalerDescriptor = [] -MetalFX_MTLFXTemporalScalerDescriptor = [] +MetalFX_MTLFXSpatialScaler = [] +MetalFX_MTLFXTemporalScaler = [] MetalFX_all = [ "MetalFX", - "MetalFX_MTLFXSpatialScalerDescriptor", - "MetalFX_MTLFXTemporalScalerDescriptor", + "MetalFX_MTLFXSpatialScaler", + "MetalFX_MTLFXTemporalScaler", ] MetalKit = [ "AppKit", "Foundation", "Metal", ] -MetalKit_MTKMesh = [] -MetalKit_MTKMeshBuffer = [] -MetalKit_MTKMeshBufferAllocator = [] -MetalKit_MTKSubmesh = [] +MetalKit_MTKDefines = [] +MetalKit_MTKModel = [] MetalKit_MTKTextureLoader = [] -MetalKit_MTKView = [ - "AppKit_NSView", -] +MetalKit_MTKView = [] MetalKit_all = [ "MetalKit", - "MetalKit_MTKMesh", - "MetalKit_MTKMeshBuffer", - "MetalKit_MTKMeshBufferAllocator", - "MetalKit_MTKSubmesh", + "MetalKit_MTKDefines", + "MetalKit_MTKModel", "MetalKit_MTKTextureLoader", "MetalKit_MTKView", ] -Metal_MTLAccelerationStructureBoundingBoxGeometryDescriptor = [ - "Metal_MTLAccelerationStructureGeometryDescriptor", -] -Metal_MTLAccelerationStructureCurveGeometryDescriptor = [ - "Metal_MTLAccelerationStructureGeometryDescriptor", -] -Metal_MTLAccelerationStructureDescriptor = [] -Metal_MTLAccelerationStructureGeometryDescriptor = [] -Metal_MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor = [ - "Metal_MTLAccelerationStructureGeometryDescriptor", -] -Metal_MTLAccelerationStructureMotionCurveGeometryDescriptor = [ - "Metal_MTLAccelerationStructureGeometryDescriptor", -] -Metal_MTLAccelerationStructureMotionTriangleGeometryDescriptor = [ - "Metal_MTLAccelerationStructureGeometryDescriptor", -] -Metal_MTLAccelerationStructurePassDescriptor = [] -Metal_MTLAccelerationStructurePassSampleBufferAttachmentDescriptor = [] -Metal_MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray = [] -Metal_MTLAccelerationStructureTriangleGeometryDescriptor = [ - "Metal_MTLAccelerationStructureGeometryDescriptor", -] -Metal_MTLArchitecture = [] +Metal_MTLAccelerationStructure = [] +Metal_MTLAccelerationStructureCommandEncoder = [] +Metal_MTLAccelerationStructureTypes = [] Metal_MTLArgument = [] -Metal_MTLArgumentDescriptor = [] -Metal_MTLArrayType = [ - "Metal_MTLType", -] -Metal_MTLAttribute = [] -Metal_MTLAttributeDescriptor = [] -Metal_MTLAttributeDescriptorArray = [] -Metal_MTLBinaryArchiveDescriptor = [] -Metal_MTLBlitPassDescriptor = [] -Metal_MTLBlitPassSampleBufferAttachmentDescriptor = [] -Metal_MTLBlitPassSampleBufferAttachmentDescriptorArray = [] -Metal_MTLBufferLayoutDescriptor = [] -Metal_MTLBufferLayoutDescriptorArray = [] -Metal_MTLCaptureDescriptor = [] +Metal_MTLArgumentEncoder = [] +Metal_MTLBinaryArchive = [] +Metal_MTLBlitCommandEncoder = [] +Metal_MTLBlitPass = [] +Metal_MTLBuffer = [] Metal_MTLCaptureManager = [] -Metal_MTLCommandBufferDescriptor = [] -Metal_MTLCompileOptions = [] -Metal_MTLComputePassDescriptor = [] -Metal_MTLComputePassSampleBufferAttachmentDescriptor = [] -Metal_MTLComputePassSampleBufferAttachmentDescriptorArray = [] -Metal_MTLComputePipelineDescriptor = [] -Metal_MTLComputePipelineReflection = [] -Metal_MTLCounterSampleBufferDescriptor = [] -Metal_MTLDepthStencilDescriptor = [] -Metal_MTLFunctionConstant = [] +Metal_MTLCaptureScope = [] +Metal_MTLCommandBuffer = [] +Metal_MTLCommandEncoder = [] +Metal_MTLCommandQueue = [] +Metal_MTLComputeCommandEncoder = [] +Metal_MTLComputePass = [] +Metal_MTLComputePipeline = [] +Metal_MTLCounters = [] +Metal_MTLDefines = [] +Metal_MTLDepthStencil = [] +Metal_MTLDevice = [] +Metal_MTLDrawable = [] +Metal_MTLDynamicLibrary = [] +Metal_MTLEvent = [] +Metal_MTLFence = [] Metal_MTLFunctionConstantValues = [] Metal_MTLFunctionDescriptor = [] -Metal_MTLFunctionStitchingAttributeAlwaysInline = [] -Metal_MTLFunctionStitchingFunctionNode = [] -Metal_MTLFunctionStitchingGraph = [] -Metal_MTLFunctionStitchingInputNode = [] -Metal_MTLHeapDescriptor = [] -Metal_MTLIOCommandQueueDescriptor = [] -Metal_MTLIndirectCommandBufferDescriptor = [] -Metal_MTLIndirectInstanceAccelerationStructureDescriptor = [ - "Metal_MTLAccelerationStructureDescriptor", -] -Metal_MTLInstanceAccelerationStructureDescriptor = [ - "Metal_MTLAccelerationStructureDescriptor", -] -Metal_MTLIntersectionFunctionDescriptor = [ - "Metal_MTLFunctionDescriptor", -] -Metal_MTLIntersectionFunctionTableDescriptor = [] +Metal_MTLFunctionHandle = [] +Metal_MTLFunctionLog = [] +Metal_MTLFunctionStitching = [] +Metal_MTLHeap = [] +Metal_MTLIOCommandBuffer = [] +Metal_MTLIOCommandQueue = [] +Metal_MTLIOCompressor = [] +Metal_MTLIndirectCommandBuffer = [] +Metal_MTLIndirectCommandEncoder = [] +Metal_MTLIntersectionFunctionTable = [] +Metal_MTLLibrary = [] Metal_MTLLinkedFunctions = [] -Metal_MTLMeshRenderPipelineDescriptor = [] -Metal_MTLMotionKeyframeData = [] -Metal_MTLPipelineBufferDescriptor = [] -Metal_MTLPipelineBufferDescriptorArray = [] -Metal_MTLPointerType = [ - "Metal_MTLType", -] -Metal_MTLPrimitiveAccelerationStructureDescriptor = [ - "Metal_MTLAccelerationStructureDescriptor", -] -Metal_MTLRasterizationRateLayerArray = [] -Metal_MTLRasterizationRateLayerDescriptor = [] -Metal_MTLRasterizationRateMapDescriptor = [] -Metal_MTLRasterizationRateSampleArray = [] -Metal_MTLRenderPassAttachmentDescriptor = [] -Metal_MTLRenderPassColorAttachmentDescriptor = [ - "Metal_MTLRenderPassAttachmentDescriptor", -] -Metal_MTLRenderPassColorAttachmentDescriptorArray = [] -Metal_MTLRenderPassDepthAttachmentDescriptor = [ - "Metal_MTLRenderPassAttachmentDescriptor", -] -Metal_MTLRenderPassDescriptor = [] -Metal_MTLRenderPassSampleBufferAttachmentDescriptor = [] -Metal_MTLRenderPassSampleBufferAttachmentDescriptorArray = [] -Metal_MTLRenderPassStencilAttachmentDescriptor = [ - "Metal_MTLRenderPassAttachmentDescriptor", -] -Metal_MTLRenderPipelineColorAttachmentDescriptor = [] -Metal_MTLRenderPipelineColorAttachmentDescriptorArray = [] -Metal_MTLRenderPipelineDescriptor = [] -Metal_MTLRenderPipelineFunctionsDescriptor = [] -Metal_MTLRenderPipelineReflection = [] -Metal_MTLResourceStatePassDescriptor = [] -Metal_MTLResourceStatePassSampleBufferAttachmentDescriptor = [] -Metal_MTLResourceStatePassSampleBufferAttachmentDescriptorArray = [] -Metal_MTLSamplerDescriptor = [] -Metal_MTLSharedEventHandle = [] -Metal_MTLSharedEventListener = [] -Metal_MTLSharedTextureHandle = [] +Metal_MTLParallelRenderCommandEncoder = [] +Metal_MTLPipeline = [] +Metal_MTLPixelFormat = [] +Metal_MTLRasterizationRate = [] +Metal_MTLRenderCommandEncoder = [] +Metal_MTLRenderPass = [] +Metal_MTLRenderPipeline = [] +Metal_MTLResource = [] +Metal_MTLResourceStateCommandEncoder = [] +Metal_MTLResourceStatePass = [] +Metal_MTLSampler = [] Metal_MTLStageInputOutputDescriptor = [] -Metal_MTLStencilDescriptor = [] -Metal_MTLStitchedLibraryDescriptor = [] -Metal_MTLStructMember = [] -Metal_MTLStructType = [ - "Metal_MTLType", -] -Metal_MTLTextureDescriptor = [] -Metal_MTLTextureReferenceType = [ - "Metal_MTLType", -] -Metal_MTLTileRenderPipelineColorAttachmentDescriptor = [] -Metal_MTLTileRenderPipelineColorAttachmentDescriptorArray = [] -Metal_MTLTileRenderPipelineDescriptor = [] -Metal_MTLType = [] -Metal_MTLVertexAttribute = [] -Metal_MTLVertexAttributeDescriptor = [] -Metal_MTLVertexAttributeDescriptorArray = [] -Metal_MTLVertexBufferLayoutDescriptor = [] -Metal_MTLVertexBufferLayoutDescriptorArray = [] +Metal_MTLTexture = [] +Metal_MTLTypes = [] Metal_MTLVertexDescriptor = [] -Metal_MTLVisibleFunctionTableDescriptor = [] +Metal_MTLVisibleFunctionTable = [] Metal_all = [ "Metal", - "Metal_MTLAccelerationStructureBoundingBoxGeometryDescriptor", - "Metal_MTLAccelerationStructureCurveGeometryDescriptor", - "Metal_MTLAccelerationStructureDescriptor", - "Metal_MTLAccelerationStructureGeometryDescriptor", - "Metal_MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor", - "Metal_MTLAccelerationStructureMotionCurveGeometryDescriptor", - "Metal_MTLAccelerationStructureMotionTriangleGeometryDescriptor", - "Metal_MTLAccelerationStructurePassDescriptor", - "Metal_MTLAccelerationStructurePassSampleBufferAttachmentDescriptor", - "Metal_MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray", - "Metal_MTLAccelerationStructureTriangleGeometryDescriptor", - "Metal_MTLArchitecture", + "Metal_MTLAccelerationStructure", + "Metal_MTLAccelerationStructureCommandEncoder", + "Metal_MTLAccelerationStructureTypes", "Metal_MTLArgument", - "Metal_MTLArgumentDescriptor", - "Metal_MTLArrayType", - "Metal_MTLAttribute", - "Metal_MTLAttributeDescriptor", - "Metal_MTLAttributeDescriptorArray", - "Metal_MTLBinaryArchiveDescriptor", - "Metal_MTLBlitPassDescriptor", - "Metal_MTLBlitPassSampleBufferAttachmentDescriptor", - "Metal_MTLBlitPassSampleBufferAttachmentDescriptorArray", - "Metal_MTLBufferLayoutDescriptor", - "Metal_MTLBufferLayoutDescriptorArray", - "Metal_MTLCaptureDescriptor", + "Metal_MTLArgumentEncoder", + "Metal_MTLBinaryArchive", + "Metal_MTLBlitCommandEncoder", + "Metal_MTLBlitPass", + "Metal_MTLBuffer", "Metal_MTLCaptureManager", - "Metal_MTLCommandBufferDescriptor", - "Metal_MTLCompileOptions", - "Metal_MTLComputePassDescriptor", - "Metal_MTLComputePassSampleBufferAttachmentDescriptor", - "Metal_MTLComputePassSampleBufferAttachmentDescriptorArray", - "Metal_MTLComputePipelineDescriptor", - "Metal_MTLComputePipelineReflection", - "Metal_MTLCounterSampleBufferDescriptor", - "Metal_MTLDepthStencilDescriptor", - "Metal_MTLFunctionConstant", + "Metal_MTLCaptureScope", + "Metal_MTLCommandBuffer", + "Metal_MTLCommandEncoder", + "Metal_MTLCommandQueue", + "Metal_MTLComputeCommandEncoder", + "Metal_MTLComputePass", + "Metal_MTLComputePipeline", + "Metal_MTLCounters", + "Metal_MTLDefines", + "Metal_MTLDepthStencil", + "Metal_MTLDevice", + "Metal_MTLDrawable", + "Metal_MTLDynamicLibrary", + "Metal_MTLEvent", + "Metal_MTLFence", "Metal_MTLFunctionConstantValues", "Metal_MTLFunctionDescriptor", - "Metal_MTLFunctionStitchingAttributeAlwaysInline", - "Metal_MTLFunctionStitchingFunctionNode", - "Metal_MTLFunctionStitchingGraph", - "Metal_MTLFunctionStitchingInputNode", - "Metal_MTLHeapDescriptor", - "Metal_MTLIOCommandQueueDescriptor", - "Metal_MTLIndirectCommandBufferDescriptor", - "Metal_MTLIndirectInstanceAccelerationStructureDescriptor", - "Metal_MTLInstanceAccelerationStructureDescriptor", - "Metal_MTLIntersectionFunctionDescriptor", - "Metal_MTLIntersectionFunctionTableDescriptor", + "Metal_MTLFunctionHandle", + "Metal_MTLFunctionLog", + "Metal_MTLFunctionStitching", + "Metal_MTLHeap", + "Metal_MTLIOCommandBuffer", + "Metal_MTLIOCommandQueue", + "Metal_MTLIOCompressor", + "Metal_MTLIndirectCommandBuffer", + "Metal_MTLIndirectCommandEncoder", + "Metal_MTLIntersectionFunctionTable", + "Metal_MTLLibrary", "Metal_MTLLinkedFunctions", - "Metal_MTLMeshRenderPipelineDescriptor", - "Metal_MTLMotionKeyframeData", - "Metal_MTLPipelineBufferDescriptor", - "Metal_MTLPipelineBufferDescriptorArray", - "Metal_MTLPointerType", - "Metal_MTLPrimitiveAccelerationStructureDescriptor", - "Metal_MTLRasterizationRateLayerArray", - "Metal_MTLRasterizationRateLayerDescriptor", - "Metal_MTLRasterizationRateMapDescriptor", - "Metal_MTLRasterizationRateSampleArray", - "Metal_MTLRenderPassAttachmentDescriptor", - "Metal_MTLRenderPassColorAttachmentDescriptor", - "Metal_MTLRenderPassColorAttachmentDescriptorArray", - "Metal_MTLRenderPassDepthAttachmentDescriptor", - "Metal_MTLRenderPassDescriptor", - "Metal_MTLRenderPassSampleBufferAttachmentDescriptor", - "Metal_MTLRenderPassSampleBufferAttachmentDescriptorArray", - "Metal_MTLRenderPassStencilAttachmentDescriptor", - "Metal_MTLRenderPipelineColorAttachmentDescriptor", - "Metal_MTLRenderPipelineColorAttachmentDescriptorArray", - "Metal_MTLRenderPipelineDescriptor", - "Metal_MTLRenderPipelineFunctionsDescriptor", - "Metal_MTLRenderPipelineReflection", - "Metal_MTLResourceStatePassDescriptor", - "Metal_MTLResourceStatePassSampleBufferAttachmentDescriptor", - "Metal_MTLResourceStatePassSampleBufferAttachmentDescriptorArray", - "Metal_MTLSamplerDescriptor", - "Metal_MTLSharedEventHandle", - "Metal_MTLSharedEventListener", - "Metal_MTLSharedTextureHandle", + "Metal_MTLParallelRenderCommandEncoder", + "Metal_MTLPipeline", + "Metal_MTLPixelFormat", + "Metal_MTLRasterizationRate", + "Metal_MTLRenderCommandEncoder", + "Metal_MTLRenderPass", + "Metal_MTLRenderPipeline", + "Metal_MTLResource", + "Metal_MTLResourceStateCommandEncoder", + "Metal_MTLResourceStatePass", + "Metal_MTLSampler", "Metal_MTLStageInputOutputDescriptor", - "Metal_MTLStencilDescriptor", - "Metal_MTLStitchedLibraryDescriptor", - "Metal_MTLStructMember", - "Metal_MTLStructType", - "Metal_MTLTextureDescriptor", - "Metal_MTLTextureReferenceType", - "Metal_MTLTileRenderPipelineColorAttachmentDescriptor", - "Metal_MTLTileRenderPipelineColorAttachmentDescriptorArray", - "Metal_MTLTileRenderPipelineDescriptor", - "Metal_MTLType", - "Metal_MTLVertexAttribute", - "Metal_MTLVertexAttributeDescriptor", - "Metal_MTLVertexAttributeDescriptorArray", - "Metal_MTLVertexBufferLayoutDescriptor", - "Metal_MTLVertexBufferLayoutDescriptorArray", + "Metal_MTLTexture", + "Metal_MTLTypes", "Metal_MTLVertexDescriptor", - "Metal_MTLVisibleFunctionTableDescriptor", + "Metal_MTLVisibleFunctionTable", ] MetricKit = [ "Foundation", ] -MetricKit_MXAnimationMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXAppExitMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXAppLaunchDiagnostic = [ - "MetricKit_MXDiagnostic", -] -MetricKit_MXAppLaunchMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXAppResponsivenessMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXAppRunTimeMetric = [ - "MetricKit_MXMetric", -] +MetricKit_MXAnimationMetric = [] +MetricKit_MXAppExitMetric = [] +MetricKit_MXAppLaunchDiagnostic = [] +MetricKit_MXAppLaunchMetric = [] +MetricKit_MXAppResponsivenessMetric = [] +MetricKit_MXAppRunTimeMetric = [] MetricKit_MXAverage = [] -MetricKit_MXBackgroundExitData = [] -MetricKit_MXCPUExceptionDiagnostic = [ - "MetricKit_MXDiagnostic", -] -MetricKit_MXCPUMetric = [ - "MetricKit_MXMetric", -] +MetricKit_MXCPUExceptionDiagnostic = [] +MetricKit_MXCPUMetric = [] MetricKit_MXCallStackTree = [] -MetricKit_MXCellularConditionMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXCrashDiagnostic = [ - "MetricKit_MXDiagnostic", -] +MetricKit_MXCellularConditionMetric = [] +MetricKit_MXCrashDiagnostic = [] MetricKit_MXCrashDiagnosticObjectiveCExceptionReason = [] MetricKit_MXDiagnostic = [] MetricKit_MXDiagnosticPayload = [] -MetricKit_MXDiskIOMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXDiskWriteExceptionDiagnostic = [ - "MetricKit_MXDiagnostic", -] -MetricKit_MXDisplayMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXForegroundExitData = [] -MetricKit_MXGPUMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXHangDiagnostic = [ - "MetricKit_MXDiagnostic", -] +MetricKit_MXDiskIOMetric = [] +MetricKit_MXDiskWriteExceptionDiagnostic = [] +MetricKit_MXDisplayMetric = [] +MetricKit_MXError = [] +MetricKit_MXGPUMetric = [] +MetricKit_MXHangDiagnostic = [] MetricKit_MXHistogram = [] -MetricKit_MXHistogramBucket = [] -MetricKit_MXLocationActivityMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXMemoryMetric = [ - "MetricKit_MXMetric", -] +MetricKit_MXLocationActivityMetric = [] +MetricKit_MXMemoryMetric = [] MetricKit_MXMetaData = [] MetricKit_MXMetric = [] MetricKit_MXMetricManager = [] MetricKit_MXMetricPayload = [] -MetricKit_MXNetworkTransferMetric = [ - "MetricKit_MXMetric", -] -MetricKit_MXSignpostIntervalData = [] -MetricKit_MXSignpostMetric = [ - "MetricKit_MXMetric", -] +MetricKit_MXNetworkTransferMetric = [] +MetricKit_MXSignpost = [] +MetricKit_MXSignpostMetric = [] MetricKit_MXSignpostRecord = [] -MetricKit_MXUnitAveragePixelLuminance = [ - "Foundation_NSDimension", -] -MetricKit_MXUnitSignalBars = [ - "Foundation_NSDimension", -] +MetricKit_MXSignpost_Private = [] +MetricKit_MXUnit = [] MetricKit_all = [ "MetricKit", "MetricKit_MXAnimationMetric", @@ -4501,7 +2993,6 @@ MetricKit_all = [ "MetricKit_MXAppResponsivenessMetric", "MetricKit_MXAppRunTimeMetric", "MetricKit_MXAverage", - "MetricKit_MXBackgroundExitData", "MetricKit_MXCPUExceptionDiagnostic", "MetricKit_MXCPUMetric", "MetricKit_MXCallStackTree", @@ -4513,11 +3004,10 @@ MetricKit_all = [ "MetricKit_MXDiskIOMetric", "MetricKit_MXDiskWriteExceptionDiagnostic", "MetricKit_MXDisplayMetric", - "MetricKit_MXForegroundExitData", + "MetricKit_MXError", "MetricKit_MXGPUMetric", "MetricKit_MXHangDiagnostic", "MetricKit_MXHistogram", - "MetricKit_MXHistogramBucket", "MetricKit_MXLocationActivityMetric", "MetricKit_MXMemoryMetric", "MetricKit_MXMetaData", @@ -4525,11 +3015,11 @@ MetricKit_all = [ "MetricKit_MXMetricManager", "MetricKit_MXMetricPayload", "MetricKit_MXNetworkTransferMetric", - "MetricKit_MXSignpostIntervalData", + "MetricKit_MXSignpost", "MetricKit_MXSignpostMetric", "MetricKit_MXSignpostRecord", - "MetricKit_MXUnitAveragePixelLuminance", - "MetricKit_MXUnitSignalBars", + "MetricKit_MXSignpost_Private", + "MetricKit_MXUnit", ] OSAKit = [ "AppKit", @@ -4538,12 +3028,8 @@ OSAKit = [ OSAKit_OSALanguage = [] OSAKit_OSALanguageInstance = [] OSAKit_OSAScript = [] -OSAKit_OSAScriptController = [ - "AppKit_NSController", -] -OSAKit_OSAScriptView = [ - "AppKit_NSTextView", -] +OSAKit_OSAScriptController = [] +OSAKit_OSAScriptView = [] OSAKit_all = [ "OSAKit", "OSAKit_OSALanguage", @@ -4559,105 +3045,57 @@ Photos = [ "UniformTypeIdentifiers", ] Photos_PHAdjustmentData = [] -Photos_PHAsset = [ - "Photos_PHObject", -] -Photos_PHAssetChangeRequest = [ - "Photos_PHChangeRequest", -] -Photos_PHAssetCollection = [ - "Photos_PHCollection", -] -Photos_PHAssetCollectionChangeRequest = [ - "Photos_PHChangeRequest", -] -Photos_PHAssetCreationRequest = [ - "Photos_PHAssetChangeRequest", -] +Photos_PHAsset = [] +Photos_PHAssetChangeRequest = [] +Photos_PHAssetCollectionChangeRequest = [] +Photos_PHAssetCreationRequest = [] Photos_PHAssetResource = [] -Photos_PHAssetResourceCreationOptions = [] Photos_PHAssetResourceManager = [] -Photos_PHAssetResourceRequestOptions = [] -Photos_PHCachingImageManager = [ - "Photos_PHImageManager", -] Photos_PHChange = [] Photos_PHChangeRequest = [] Photos_PHCloudIdentifier = [] -Photos_PHCloudIdentifierMapping = [] -Photos_PHCollection = [ - "Photos_PHObject", -] -Photos_PHCollectionList = [ - "Photos_PHCollection", -] -Photos_PHCollectionListChangeRequest = [ - "Photos_PHChangeRequest", -] +Photos_PHCollection = [] +Photos_PHCollectionListChangeRequest = [] Photos_PHContentEditingInput = [] -Photos_PHContentEditingInputRequestOptions = [] Photos_PHContentEditingOutput = [] +Photos_PHError = [] Photos_PHFetchOptions = [] Photos_PHFetchResult = [] -Photos_PHFetchResultChangeDetails = [] Photos_PHImageManager = [] -Photos_PHImageRequestOptions = [] Photos_PHLivePhoto = [] Photos_PHLivePhotoEditingContext = [] -Photos_PHLivePhotoRequestOptions = [] -Photos_PHLocalIdentifierMapping = [] Photos_PHObject = [] -Photos_PHObjectChangeDetails = [] -Photos_PHObjectPlaceholder = [ - "Photos_PHObject", -] Photos_PHPersistentChange = [] Photos_PHPersistentChangeFetchResult = [] Photos_PHPersistentChangeToken = [] Photos_PHPersistentObjectChangeDetails = [] Photos_PHPhotoLibrary = [] -Photos_PHProject = [ - "Photos_PHAssetCollection", -] -Photos_PHProjectChangeRequest = [ - "Photos_PHChangeRequest", -] -Photos_PHVideoRequestOptions = [] +Photos_PHProject = [] +Photos_PHProjectChangeRequest = [] +Photos_PhotosTypes = [] Photos_all = [ "Photos", "Photos_PHAdjustmentData", "Photos_PHAsset", "Photos_PHAssetChangeRequest", - "Photos_PHAssetCollection", "Photos_PHAssetCollectionChangeRequest", "Photos_PHAssetCreationRequest", "Photos_PHAssetResource", - "Photos_PHAssetResourceCreationOptions", "Photos_PHAssetResourceManager", - "Photos_PHAssetResourceRequestOptions", - "Photos_PHCachingImageManager", "Photos_PHChange", "Photos_PHChangeRequest", "Photos_PHCloudIdentifier", - "Photos_PHCloudIdentifierMapping", "Photos_PHCollection", - "Photos_PHCollectionList", "Photos_PHCollectionListChangeRequest", "Photos_PHContentEditingInput", - "Photos_PHContentEditingInputRequestOptions", "Photos_PHContentEditingOutput", + "Photos_PHError", "Photos_PHFetchOptions", "Photos_PHFetchResult", - "Photos_PHFetchResultChangeDetails", "Photos_PHImageManager", - "Photos_PHImageRequestOptions", "Photos_PHLivePhoto", "Photos_PHLivePhotoEditingContext", - "Photos_PHLivePhotoRequestOptions", - "Photos_PHLocalIdentifierMapping", "Photos_PHObject", - "Photos_PHObjectChangeDetails", - "Photos_PHObjectPlaceholder", "Photos_PHPersistentChange", "Photos_PHPersistentChangeFetchResult", "Photos_PHPersistentChangeToken", @@ -4665,158 +3103,134 @@ Photos_all = [ "Photos_PHPhotoLibrary", "Photos_PHProject", "Photos_PHProjectChangeRequest", - "Photos_PHVideoRequestOptions", + "Photos_PhotosTypes", ] QuartzCore = [ "Foundation", ] QuartzCore_CAAnimation = [] -QuartzCore_CAAnimationGroup = [ - "QuartzCore_CAAnimation", -] -QuartzCore_CABasicAnimation = [ - "QuartzCore_CAPropertyAnimation", -] -QuartzCore_CAConstraint = [] +QuartzCore_CABase = [] QuartzCore_CAConstraintLayoutManager = [] QuartzCore_CADisplayLink = [] QuartzCore_CAEDRMetadata = [] QuartzCore_CAEmitterCell = [] -QuartzCore_CAEmitterLayer = [ - "QuartzCore_CALayer", -] -QuartzCore_CAGradientLayer = [ - "QuartzCore_CALayer", -] -QuartzCore_CAKeyframeAnimation = [ - "QuartzCore_CAPropertyAnimation", -] +QuartzCore_CAEmitterLayer = [] +QuartzCore_CAFrameRateRange = [] +QuartzCore_CAGradientLayer = [] QuartzCore_CALayer = [] +QuartzCore_CAMediaTiming = [] QuartzCore_CAMediaTimingFunction = [] QuartzCore_CAMetalDisplayLink = [] -QuartzCore_CAMetalDisplayLinkUpdate = [] -QuartzCore_CAPropertyAnimation = [ - "QuartzCore_CAAnimation", -] +QuartzCore_CAMetalLayer = [] +QuartzCore_CAOpenGLLayer = [] QuartzCore_CARemoteLayerClient = [] QuartzCore_CARemoteLayerServer = [] QuartzCore_CARenderer = [] -QuartzCore_CAReplicatorLayer = [ - "QuartzCore_CALayer", -] -QuartzCore_CAScrollLayer = [ - "QuartzCore_CALayer", -] -QuartzCore_CAShapeLayer = [ - "QuartzCore_CALayer", -] -QuartzCore_CASpringAnimation = [ - "QuartzCore_CABasicAnimation", -] -QuartzCore_CATextLayer = [ - "QuartzCore_CALayer", -] -QuartzCore_CATiledLayer = [ - "QuartzCore_CALayer", -] +QuartzCore_CAReplicatorLayer = [] +QuartzCore_CAScrollLayer = [] +QuartzCore_CAShapeLayer = [] +QuartzCore_CATextLayer = [] +QuartzCore_CATiledLayer = [] QuartzCore_CATransaction = [] -QuartzCore_CATransformLayer = [ - "QuartzCore_CALayer", -] -QuartzCore_CATransition = [ - "QuartzCore_CAAnimation", -] +QuartzCore_CATransform3D = [] +QuartzCore_CATransformLayer = [] QuartzCore_CAValueFunction = [] +QuartzCore_CoreAnimation = [] +QuartzCore_CoreImage = [] +QuartzCore_CoreVideo = [] QuartzCore_all = [ "QuartzCore", "QuartzCore_CAAnimation", - "QuartzCore_CAAnimationGroup", - "QuartzCore_CABasicAnimation", - "QuartzCore_CAConstraint", + "QuartzCore_CABase", "QuartzCore_CAConstraintLayoutManager", "QuartzCore_CADisplayLink", "QuartzCore_CAEDRMetadata", "QuartzCore_CAEmitterCell", "QuartzCore_CAEmitterLayer", + "QuartzCore_CAFrameRateRange", "QuartzCore_CAGradientLayer", - "QuartzCore_CAKeyframeAnimation", "QuartzCore_CALayer", + "QuartzCore_CAMediaTiming", "QuartzCore_CAMediaTimingFunction", "QuartzCore_CAMetalDisplayLink", - "QuartzCore_CAMetalDisplayLinkUpdate", - "QuartzCore_CAPropertyAnimation", + "QuartzCore_CAMetalLayer", + "QuartzCore_CAOpenGLLayer", "QuartzCore_CARemoteLayerClient", "QuartzCore_CARemoteLayerServer", "QuartzCore_CARenderer", "QuartzCore_CAReplicatorLayer", "QuartzCore_CAScrollLayer", "QuartzCore_CAShapeLayer", - "QuartzCore_CASpringAnimation", "QuartzCore_CATextLayer", "QuartzCore_CATiledLayer", "QuartzCore_CATransaction", + "QuartzCore_CATransform3D", "QuartzCore_CATransformLayer", - "QuartzCore_CATransition", "QuartzCore_CAValueFunction", + "QuartzCore_CoreAnimation", + "QuartzCore_CoreImage", + "QuartzCore_CoreVideo", ] ServiceManagement = [ "Foundation", ] ServiceManagement_SMAppService = [] +ServiceManagement_SMErrors = [] +ServiceManagement_SMLoginItem = [] ServiceManagement_all = [ "ServiceManagement", "ServiceManagement_SMAppService", + "ServiceManagement_SMErrors", + "ServiceManagement_SMLoginItem", ] SoundAnalysis = [ "Foundation", ] -SoundAnalysis_SNAudioFileAnalyzer = [] -SoundAnalysis_SNAudioStreamAnalyzer = [] -SoundAnalysis_SNClassification = [] +SoundAnalysis_SNAnalyzer = [] SoundAnalysis_SNClassificationResult = [] SoundAnalysis_SNClassifySoundRequest = [] +SoundAnalysis_SNDefines = [] +SoundAnalysis_SNError = [] +SoundAnalysis_SNRequest = [] +SoundAnalysis_SNResult = [] SoundAnalysis_SNTimeDurationConstraint = [] +SoundAnalysis_SNTypes = [] SoundAnalysis_all = [ "SoundAnalysis", - "SoundAnalysis_SNAudioFileAnalyzer", - "SoundAnalysis_SNAudioStreamAnalyzer", - "SoundAnalysis_SNClassification", + "SoundAnalysis_SNAnalyzer", "SoundAnalysis_SNClassificationResult", "SoundAnalysis_SNClassifySoundRequest", + "SoundAnalysis_SNDefines", + "SoundAnalysis_SNError", + "SoundAnalysis_SNRequest", + "SoundAnalysis_SNResult", "SoundAnalysis_SNTimeDurationConstraint", + "SoundAnalysis_SNTypes", ] Speech = [ "Foundation", ] -Speech_SFAcousticFeature = [] -Speech_SFSpeechAudioBufferRecognitionRequest = [ - "Speech_SFSpeechRecognitionRequest", -] +Speech_SFErrors = [] Speech_SFSpeechLanguageModel = [] -Speech_SFSpeechLanguageModelConfiguration = [] Speech_SFSpeechRecognitionMetadata = [] Speech_SFSpeechRecognitionRequest = [] Speech_SFSpeechRecognitionResult = [] Speech_SFSpeechRecognitionTask = [] +Speech_SFSpeechRecognitionTaskHint = [] Speech_SFSpeechRecognizer = [] -Speech_SFSpeechURLRecognitionRequest = [ - "Speech_SFSpeechRecognitionRequest", -] Speech_SFTranscription = [] Speech_SFTranscriptionSegment = [] Speech_SFVoiceAnalytics = [] Speech_all = [ "Speech", - "Speech_SFAcousticFeature", - "Speech_SFSpeechAudioBufferRecognitionRequest", + "Speech_SFErrors", "Speech_SFSpeechLanguageModel", - "Speech_SFSpeechLanguageModelConfiguration", "Speech_SFSpeechRecognitionMetadata", "Speech_SFSpeechRecognitionRequest", "Speech_SFSpeechRecognitionResult", "Speech_SFSpeechRecognitionTask", + "Speech_SFSpeechRecognitionTaskHint", "Speech_SFSpeechRecognizer", - "Speech_SFSpeechURLRecognitionRequest", "Speech_SFTranscription", "Speech_SFTranscriptionSegment", "Speech_SFVoiceAnalytics", @@ -4825,24 +3239,15 @@ StoreKit = [ "AppKit", "Foundation", ] +StoreKit_SKANError = [] StoreKit_SKAdImpression = [] StoreKit_SKAdNetwork = [] StoreKit_SKArcadeService = [] StoreKit_SKCloudServiceController = [] -StoreKit_SKCloudServiceSetupViewController = [ - "AppKit_NSViewController", -] +StoreKit_SKCloudServiceSetupViewController = [] StoreKit_SKDownload = [] -StoreKit_SKMutablePayment = [ - "StoreKit_SKPayment", -] +StoreKit_SKError = [] StoreKit_SKOverlay = [] -StoreKit_SKOverlayAppClipConfiguration = [ - "StoreKit_SKOverlayConfiguration", -] -StoreKit_SKOverlayAppConfiguration = [ - "StoreKit_SKOverlayConfiguration", -] StoreKit_SKOverlayConfiguration = [] StoreKit_SKOverlayTransitionContext = [] StoreKit_SKPayment = [] @@ -4852,32 +3257,24 @@ StoreKit_SKPaymentTransaction = [] StoreKit_SKProduct = [] StoreKit_SKProductDiscount = [] StoreKit_SKProductStorePromotionController = [] -StoreKit_SKProductSubscriptionPeriod = [] -StoreKit_SKProductsRequest = [ - "StoreKit_SKRequest", -] -StoreKit_SKProductsResponse = [] -StoreKit_SKReceiptRefreshRequest = [ - "StoreKit_SKRequest", -] +StoreKit_SKProductsRequest = [] +StoreKit_SKReceiptRefreshRequest = [] StoreKit_SKRequest = [] -StoreKit_SKStoreProductViewController = [ - "AppKit_NSViewController", -] +StoreKit_SKStoreProductViewController = [] StoreKit_SKStoreReviewController = [] StoreKit_SKStorefront = [] +StoreKit_StoreKitDefines = [] StoreKit_all = [ "StoreKit", + "StoreKit_SKANError", "StoreKit_SKAdImpression", "StoreKit_SKAdNetwork", "StoreKit_SKArcadeService", "StoreKit_SKCloudServiceController", "StoreKit_SKCloudServiceSetupViewController", "StoreKit_SKDownload", - "StoreKit_SKMutablePayment", + "StoreKit_SKError", "StoreKit_SKOverlay", - "StoreKit_SKOverlayAppClipConfiguration", - "StoreKit_SKOverlayAppConfiguration", "StoreKit_SKOverlayConfiguration", "StoreKit_SKOverlayTransitionContext", "StoreKit_SKPayment", @@ -4887,36 +3284,38 @@ StoreKit_all = [ "StoreKit_SKProduct", "StoreKit_SKProductDiscount", "StoreKit_SKProductStorePromotionController", - "StoreKit_SKProductSubscriptionPeriod", "StoreKit_SKProductsRequest", - "StoreKit_SKProductsResponse", "StoreKit_SKReceiptRefreshRequest", "StoreKit_SKRequest", "StoreKit_SKStoreProductViewController", "StoreKit_SKStoreReviewController", "StoreKit_SKStorefront", + "StoreKit_StoreKitDefines", ] UniformTypeIdentifiers = [ "Foundation", ] +UniformTypeIdentifiers_NSItemProvider_UTType = [] +UniformTypeIdentifiers_UTAdditions = [] +UniformTypeIdentifiers_UTCoreTypes = [] +UniformTypeIdentifiers_UTDefines = [] +UniformTypeIdentifiers_UTTagClass = [] UniformTypeIdentifiers_UTType = [] UniformTypeIdentifiers_all = [ "UniformTypeIdentifiers", + "UniformTypeIdentifiers_NSItemProvider_UTType", + "UniformTypeIdentifiers_UTAdditions", + "UniformTypeIdentifiers_UTCoreTypes", + "UniformTypeIdentifiers_UTDefines", + "UniformTypeIdentifiers_UTTagClass", "UniformTypeIdentifiers_UTType", ] UserNotifications = [ "CoreLocation", "Foundation", ] -UserNotifications_UNCalendarNotificationTrigger = [ - "UserNotifications_UNNotificationTrigger", -] -UserNotifications_UNLocationNotificationTrigger = [ - "UserNotifications_UNNotificationTrigger", -] -UserNotifications_UNMutableNotificationContent = [ - "UserNotifications_UNNotificationContent", -] +UserNotifications_NSString_UserNotifications = [] +UserNotifications_UNError = [] UserNotifications_UNNotification = [] UserNotifications_UNNotificationAction = [] UserNotifications_UNNotificationActionIcon = [] @@ -4929,24 +3328,11 @@ UserNotifications_UNNotificationServiceExtension = [] UserNotifications_UNNotificationSettings = [] UserNotifications_UNNotificationSound = [] UserNotifications_UNNotificationTrigger = [] -UserNotifications_UNPushNotificationTrigger = [ - "UserNotifications_UNNotificationTrigger", -] -UserNotifications_UNTextInputNotificationAction = [ - "UserNotifications_UNNotificationAction", -] -UserNotifications_UNTextInputNotificationResponse = [ - "UserNotifications_UNNotificationResponse", -] -UserNotifications_UNTimeIntervalNotificationTrigger = [ - "UserNotifications_UNNotificationTrigger", -] UserNotifications_UNUserNotificationCenter = [] UserNotifications_all = [ "UserNotifications", - "UserNotifications_UNCalendarNotificationTrigger", - "UserNotifications_UNLocationNotificationTrigger", - "UserNotifications_UNMutableNotificationContent", + "UserNotifications_NSString_UserNotifications", + "UserNotifications_UNError", "UserNotifications_UNNotification", "UserNotifications_UNNotificationAction", "UserNotifications_UNNotificationActionIcon", @@ -4959,374 +3345,180 @@ UserNotifications_all = [ "UserNotifications_UNNotificationSettings", "UserNotifications_UNNotificationSound", "UserNotifications_UNNotificationTrigger", - "UserNotifications_UNPushNotificationTrigger", - "UserNotifications_UNTextInputNotificationAction", - "UserNotifications_UNTextInputNotificationResponse", - "UserNotifications_UNTimeIntervalNotificationTrigger", "UserNotifications_UNUserNotificationCenter", ] WebKit = [ "AppKit", "Foundation", ] -WebKit_DOMAbstractView = [ - "WebKit_DOMObject", -] -WebKit_DOMAttr = [ - "WebKit_DOMNode", -] -WebKit_DOMBlob = [ - "WebKit_DOMObject", -] -WebKit_DOMCDATASection = [ - "WebKit_DOMText", -] -WebKit_DOMCSSCharsetRule = [ - "WebKit_DOMCSSRule", -] -WebKit_DOMCSSFontFaceRule = [ - "WebKit_DOMCSSRule", -] -WebKit_DOMCSSImportRule = [ - "WebKit_DOMCSSRule", -] -WebKit_DOMCSSMediaRule = [ - "WebKit_DOMCSSRule", -] -WebKit_DOMCSSPageRule = [ - "WebKit_DOMCSSRule", -] -WebKit_DOMCSSPrimitiveValue = [ - "WebKit_DOMCSSValue", -] -WebKit_DOMCSSRule = [ - "WebKit_DOMObject", -] -WebKit_DOMCSSRuleList = [ - "WebKit_DOMObject", -] -WebKit_DOMCSSStyleDeclaration = [ - "WebKit_DOMObject", -] -WebKit_DOMCSSStyleRule = [ - "WebKit_DOMCSSRule", -] -WebKit_DOMCSSStyleSheet = [ - "WebKit_DOMStyleSheet", -] -WebKit_DOMCSSUnknownRule = [ - "WebKit_DOMCSSRule", -] -WebKit_DOMCSSValue = [ - "WebKit_DOMObject", -] -WebKit_DOMCSSValueList = [ - "WebKit_DOMCSSValue", -] -WebKit_DOMCharacterData = [ - "WebKit_DOMNode", -] -WebKit_DOMComment = [ - "WebKit_DOMCharacterData", -] -WebKit_DOMCounter = [ - "WebKit_DOMObject", -] -WebKit_DOMDocument = [ - "WebKit_DOMNode", -] -WebKit_DOMDocumentFragment = [ - "WebKit_DOMNode", -] -WebKit_DOMDocumentType = [ - "WebKit_DOMNode", -] -WebKit_DOMElement = [ - "WebKit_DOMNode", -] -WebKit_DOMEntity = [ - "WebKit_DOMNode", -] -WebKit_DOMEntityReference = [ - "WebKit_DOMNode", -] -WebKit_DOMEvent = [ - "WebKit_DOMObject", -] -WebKit_DOMFile = [ - "WebKit_DOMBlob", -] -WebKit_DOMFileList = [ - "WebKit_DOMObject", -] -WebKit_DOMHTMLAnchorElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLAppletElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLAreaElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLBRElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLBaseElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLBaseFontElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLBodyElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLButtonElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLCollection = [ - "WebKit_DOMObject", -] -WebKit_DOMHTMLDListElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLDirectoryElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLDivElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLDocument = [ - "WebKit_DOMDocument", -] -WebKit_DOMHTMLElement = [ - "WebKit_DOMElement", -] -WebKit_DOMHTMLEmbedElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLFieldSetElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLFontElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLFormElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLFrameElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLFrameSetElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLHRElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLHeadElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLHeadingElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLHtmlElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLIFrameElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLImageElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLInputElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLLIElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLLabelElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLLegendElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLLinkElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLMapElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLMarqueeElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLMenuElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLMetaElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLModElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLOListElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLObjectElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLOptGroupElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLOptionElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLOptionsCollection = [ - "WebKit_DOMObject", -] -WebKit_DOMHTMLParagraphElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLParamElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLPreElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLQuoteElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLScriptElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLSelectElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLStyleElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLTableCaptionElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLTableCellElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLTableColElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLTableElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLTableRowElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLTableSectionElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLTextAreaElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLTitleElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMHTMLUListElement = [ - "WebKit_DOMHTMLElement", -] -WebKit_DOMImplementation = [ - "WebKit_DOMObject", -] -WebKit_DOMKeyboardEvent = [ - "WebKit_DOMUIEvent", -] -WebKit_DOMMediaList = [ - "WebKit_DOMObject", -] -WebKit_DOMMouseEvent = [ - "WebKit_DOMUIEvent", -] -WebKit_DOMMutationEvent = [ - "WebKit_DOMEvent", -] -WebKit_DOMNamedNodeMap = [ - "WebKit_DOMObject", -] -WebKit_DOMNode = [ - "WebKit_DOMObject", -] -WebKit_DOMNodeIterator = [ - "WebKit_DOMObject", -] -WebKit_DOMNodeList = [ - "WebKit_DOMObject", -] -WebKit_DOMObject = [ - "WebKit_WebScriptObject", -] -WebKit_DOMOverflowEvent = [ - "WebKit_DOMEvent", -] -WebKit_DOMProcessingInstruction = [ - "WebKit_DOMCharacterData", -] -WebKit_DOMProgressEvent = [ - "WebKit_DOMEvent", -] -WebKit_DOMRGBColor = [ - "WebKit_DOMObject", -] -WebKit_DOMRange = [ - "WebKit_DOMObject", -] -WebKit_DOMRect = [ - "WebKit_DOMObject", -] -WebKit_DOMStyleSheet = [ - "WebKit_DOMObject", -] -WebKit_DOMStyleSheetList = [ - "WebKit_DOMObject", -] -WebKit_DOMText = [ - "WebKit_DOMCharacterData", -] -WebKit_DOMTreeWalker = [ - "WebKit_DOMObject", -] -WebKit_DOMUIEvent = [ - "WebKit_DOMEvent", -] -WebKit_DOMWheelEvent = [ - "WebKit_DOMMouseEvent", -] -WebKit_DOMXPathExpression = [ - "WebKit_DOMObject", -] -WebKit_DOMXPathResult = [ - "WebKit_DOMObject", -] +WebKit_DOM = [] +WebKit_DOMAbstractView = [] +WebKit_DOMAttr = [] +WebKit_DOMBlob = [] +WebKit_DOMCDATASection = [] +WebKit_DOMCSS = [] +WebKit_DOMCSSCharsetRule = [] +WebKit_DOMCSSFontFaceRule = [] +WebKit_DOMCSSImportRule = [] +WebKit_DOMCSSMediaRule = [] +WebKit_DOMCSSPageRule = [] +WebKit_DOMCSSPrimitiveValue = [] +WebKit_DOMCSSRule = [] +WebKit_DOMCSSRuleList = [] +WebKit_DOMCSSStyleDeclaration = [] +WebKit_DOMCSSStyleRule = [] +WebKit_DOMCSSStyleSheet = [] +WebKit_DOMCSSUnknownRule = [] +WebKit_DOMCSSValue = [] +WebKit_DOMCSSValueList = [] +WebKit_DOMCharacterData = [] +WebKit_DOMComment = [] +WebKit_DOMCore = [] +WebKit_DOMCounter = [] +WebKit_DOMDocument = [] +WebKit_DOMDocumentFragment = [] +WebKit_DOMDocumentType = [] +WebKit_DOMElement = [] +WebKit_DOMEntity = [] +WebKit_DOMEntityReference = [] +WebKit_DOMEvent = [] +WebKit_DOMEventException = [] +WebKit_DOMEventListener = [] +WebKit_DOMEventTarget = [] +WebKit_DOMEvents = [] +WebKit_DOMException = [] +WebKit_DOMExtensions = [] +WebKit_DOMFile = [] +WebKit_DOMFileList = [] +WebKit_DOMHTML = [] +WebKit_DOMHTMLAnchorElement = [] +WebKit_DOMHTMLAppletElement = [] +WebKit_DOMHTMLAreaElement = [] +WebKit_DOMHTMLBRElement = [] +WebKit_DOMHTMLBaseElement = [] +WebKit_DOMHTMLBaseFontElement = [] +WebKit_DOMHTMLBodyElement = [] +WebKit_DOMHTMLButtonElement = [] +WebKit_DOMHTMLCollection = [] +WebKit_DOMHTMLDListElement = [] +WebKit_DOMHTMLDirectoryElement = [] +WebKit_DOMHTMLDivElement = [] +WebKit_DOMHTMLDocument = [] +WebKit_DOMHTMLElement = [] +WebKit_DOMHTMLEmbedElement = [] +WebKit_DOMHTMLFieldSetElement = [] +WebKit_DOMHTMLFontElement = [] +WebKit_DOMHTMLFormElement = [] +WebKit_DOMHTMLFrameElement = [] +WebKit_DOMHTMLFrameSetElement = [] +WebKit_DOMHTMLHRElement = [] +WebKit_DOMHTMLHeadElement = [] +WebKit_DOMHTMLHeadingElement = [] +WebKit_DOMHTMLHtmlElement = [] +WebKit_DOMHTMLIFrameElement = [] +WebKit_DOMHTMLImageElement = [] +WebKit_DOMHTMLInputElement = [] +WebKit_DOMHTMLLIElement = [] +WebKit_DOMHTMLLabelElement = [] +WebKit_DOMHTMLLegendElement = [] +WebKit_DOMHTMLLinkElement = [] +WebKit_DOMHTMLMapElement = [] +WebKit_DOMHTMLMarqueeElement = [] +WebKit_DOMHTMLMenuElement = [] +WebKit_DOMHTMLMetaElement = [] +WebKit_DOMHTMLModElement = [] +WebKit_DOMHTMLOListElement = [] +WebKit_DOMHTMLObjectElement = [] +WebKit_DOMHTMLOptGroupElement = [] +WebKit_DOMHTMLOptionElement = [] +WebKit_DOMHTMLOptionsCollection = [] +WebKit_DOMHTMLParagraphElement = [] +WebKit_DOMHTMLParamElement = [] +WebKit_DOMHTMLPreElement = [] +WebKit_DOMHTMLQuoteElement = [] +WebKit_DOMHTMLScriptElement = [] +WebKit_DOMHTMLSelectElement = [] +WebKit_DOMHTMLStyleElement = [] +WebKit_DOMHTMLTableCaptionElement = [] +WebKit_DOMHTMLTableCellElement = [] +WebKit_DOMHTMLTableColElement = [] +WebKit_DOMHTMLTableElement = [] +WebKit_DOMHTMLTableRowElement = [] +WebKit_DOMHTMLTableSectionElement = [] +WebKit_DOMHTMLTextAreaElement = [] +WebKit_DOMHTMLTitleElement = [] +WebKit_DOMHTMLUListElement = [] +WebKit_DOMImplementation = [] +WebKit_DOMKeyboardEvent = [] +WebKit_DOMMediaList = [] +WebKit_DOMMouseEvent = [] +WebKit_DOMMutationEvent = [] +WebKit_DOMNamedNodeMap = [] +WebKit_DOMNode = [] +WebKit_DOMNodeFilter = [] +WebKit_DOMNodeIterator = [] +WebKit_DOMNodeList = [] +WebKit_DOMObject = [] +WebKit_DOMOverflowEvent = [] +WebKit_DOMProcessingInstruction = [] +WebKit_DOMProgressEvent = [] +WebKit_DOMRGBColor = [] +WebKit_DOMRange = [] +WebKit_DOMRangeException = [] +WebKit_DOMRanges = [] +WebKit_DOMRect = [] +WebKit_DOMStyleSheet = [] +WebKit_DOMStyleSheetList = [] +WebKit_DOMStylesheets = [] +WebKit_DOMText = [] +WebKit_DOMTraversal = [] +WebKit_DOMTreeWalker = [] +WebKit_DOMUIEvent = [] +WebKit_DOMViews = [] +WebKit_DOMWheelEvent = [] +WebKit_DOMXPath = [] +WebKit_DOMXPathException = [] +WebKit_DOMXPathExpression = [] +WebKit_DOMXPathNSResolver = [] +WebKit_DOMXPathResult = [] +WebKit_NSAttributedString = [] WebKit_WKBackForwardList = [] WebKit_WKBackForwardListItem = [] WebKit_WKContentRuleList = [] WebKit_WKContentRuleListStore = [] WebKit_WKContentWorld = [] +WebKit_WKContextMenuElementInfo = [] +WebKit_WKDataDetectorTypes = [] WebKit_WKDownload = [] +WebKit_WKDownloadDelegate = [] +WebKit_WKError = [] WebKit_WKFindConfiguration = [] WebKit_WKFindResult = [] +WebKit_WKFoundation = [] WebKit_WKFrameInfo = [] WebKit_WKHTTPCookieStore = [] WebKit_WKNavigation = [] WebKit_WKNavigationAction = [] +WebKit_WKNavigationDelegate = [] WebKit_WKNavigationResponse = [] WebKit_WKOpenPanelParameters = [] WebKit_WKPDFConfiguration = [] WebKit_WKPreferences = [] +WebKit_WKPreviewActionItem = [] +WebKit_WKPreviewActionItemIdentifiers = [] +WebKit_WKPreviewElementInfo = [] WebKit_WKProcessPool = [] WebKit_WKScriptMessage = [] +WebKit_WKScriptMessageHandler = [] +WebKit_WKScriptMessageHandlerWithReply = [] WebKit_WKSecurityOrigin = [] WebKit_WKSnapshotConfiguration = [] +WebKit_WKUIDelegate = [] +WebKit_WKURLSchemeHandler = [] +WebKit_WKURLSchemeTask = [] WebKit_WKUserContentController = [] WebKit_WKUserScript = [] -WebKit_WKWebView = [ - "AppKit_NSView", -] +WebKit_WKWebView = [] WebKit_WKWebViewConfiguration = [] WebKit_WKWebpagePreferences = [] WebKit_WKWebsiteDataRecord = [] @@ -5334,29 +3526,37 @@ WebKit_WKWebsiteDataStore = [] WebKit_WKWindowFeatures = [] WebKit_WebArchive = [] WebKit_WebBackForwardList = [] +WebKit_WebDOMOperations = [] WebKit_WebDataSource = [] -WebKit_WebDownload = [ - "Foundation_NSURLDownload", -] +WebKit_WebDocument = [] +WebKit_WebDownload = [] +WebKit_WebEditingDelegate = [] WebKit_WebFrame = [] -WebKit_WebFrameView = [ - "AppKit_NSView", -] +WebKit_WebFrameLoadDelegate = [] +WebKit_WebFrameView = [] WebKit_WebHistory = [] WebKit_WebHistoryItem = [] +WebKit_WebKitAvailability = [] +WebKit_WebKitErrors = [] +WebKit_WebKitLegacy = [] +WebKit_WebPlugin = [] +WebKit_WebPluginContainer = [] +WebKit_WebPluginViewFactory = [] +WebKit_WebPolicyDelegate = [] WebKit_WebPreferences = [] WebKit_WebResource = [] +WebKit_WebResourceLoadDelegate = [] WebKit_WebScriptObject = [] -WebKit_WebUndefined = [] -WebKit_WebView = [ - "AppKit_NSView", -] +WebKit_WebUIDelegate = [] +WebKit_WebView = [] WebKit_all = [ "WebKit", + "WebKit_DOM", "WebKit_DOMAbstractView", "WebKit_DOMAttr", "WebKit_DOMBlob", "WebKit_DOMCDATASection", + "WebKit_DOMCSS", "WebKit_DOMCSSCharsetRule", "WebKit_DOMCSSFontFaceRule", "WebKit_DOMCSSImportRule", @@ -5373,6 +3573,7 @@ WebKit_all = [ "WebKit_DOMCSSValueList", "WebKit_DOMCharacterData", "WebKit_DOMComment", + "WebKit_DOMCore", "WebKit_DOMCounter", "WebKit_DOMDocument", "WebKit_DOMDocumentFragment", @@ -5381,8 +3582,15 @@ WebKit_all = [ "WebKit_DOMEntity", "WebKit_DOMEntityReference", "WebKit_DOMEvent", + "WebKit_DOMEventException", + "WebKit_DOMEventListener", + "WebKit_DOMEventTarget", + "WebKit_DOMEvents", + "WebKit_DOMException", + "WebKit_DOMExtensions", "WebKit_DOMFile", "WebKit_DOMFileList", + "WebKit_DOMHTML", "WebKit_DOMHTMLAnchorElement", "WebKit_DOMHTMLAppletElement", "WebKit_DOMHTMLAreaElement", @@ -5447,6 +3655,7 @@ WebKit_all = [ "WebKit_DOMMutationEvent", "WebKit_DOMNamedNodeMap", "WebKit_DOMNode", + "WebKit_DOMNodeFilter", "WebKit_DOMNodeIterator", "WebKit_DOMNodeList", "WebKit_DOMObject", @@ -5455,35 +3664,58 @@ WebKit_all = [ "WebKit_DOMProgressEvent", "WebKit_DOMRGBColor", "WebKit_DOMRange", + "WebKit_DOMRangeException", + "WebKit_DOMRanges", "WebKit_DOMRect", "WebKit_DOMStyleSheet", "WebKit_DOMStyleSheetList", + "WebKit_DOMStylesheets", "WebKit_DOMText", + "WebKit_DOMTraversal", "WebKit_DOMTreeWalker", "WebKit_DOMUIEvent", + "WebKit_DOMViews", "WebKit_DOMWheelEvent", + "WebKit_DOMXPath", + "WebKit_DOMXPathException", "WebKit_DOMXPathExpression", + "WebKit_DOMXPathNSResolver", "WebKit_DOMXPathResult", + "WebKit_NSAttributedString", "WebKit_WKBackForwardList", "WebKit_WKBackForwardListItem", "WebKit_WKContentRuleList", "WebKit_WKContentRuleListStore", "WebKit_WKContentWorld", + "WebKit_WKContextMenuElementInfo", + "WebKit_WKDataDetectorTypes", "WebKit_WKDownload", + "WebKit_WKDownloadDelegate", + "WebKit_WKError", "WebKit_WKFindConfiguration", "WebKit_WKFindResult", + "WebKit_WKFoundation", "WebKit_WKFrameInfo", "WebKit_WKHTTPCookieStore", "WebKit_WKNavigation", "WebKit_WKNavigationAction", + "WebKit_WKNavigationDelegate", "WebKit_WKNavigationResponse", "WebKit_WKOpenPanelParameters", "WebKit_WKPDFConfiguration", "WebKit_WKPreferences", + "WebKit_WKPreviewActionItem", + "WebKit_WKPreviewActionItemIdentifiers", + "WebKit_WKPreviewElementInfo", "WebKit_WKProcessPool", "WebKit_WKScriptMessage", + "WebKit_WKScriptMessageHandler", + "WebKit_WKScriptMessageHandlerWithReply", "WebKit_WKSecurityOrigin", "WebKit_WKSnapshotConfiguration", + "WebKit_WKUIDelegate", + "WebKit_WKURLSchemeHandler", + "WebKit_WKURLSchemeTask", "WebKit_WKUserContentController", "WebKit_WKUserScript", "WebKit_WKWebView", @@ -5494,16 +3726,28 @@ WebKit_all = [ "WebKit_WKWindowFeatures", "WebKit_WebArchive", "WebKit_WebBackForwardList", + "WebKit_WebDOMOperations", "WebKit_WebDataSource", + "WebKit_WebDocument", "WebKit_WebDownload", + "WebKit_WebEditingDelegate", "WebKit_WebFrame", + "WebKit_WebFrameLoadDelegate", "WebKit_WebFrameView", "WebKit_WebHistory", "WebKit_WebHistoryItem", + "WebKit_WebKitAvailability", + "WebKit_WebKitErrors", + "WebKit_WebKitLegacy", + "WebKit_WebPlugin", + "WebKit_WebPluginContainer", + "WebKit_WebPluginViewFactory", + "WebKit_WebPolicyDelegate", "WebKit_WebPreferences", "WebKit_WebResource", + "WebKit_WebResourceLoadDelegate", "WebKit_WebScriptObject", - "WebKit_WebUndefined", + "WebKit_WebUIDelegate", "WebKit_WebView", ] unstable-frameworks-macos-10-12 = [ diff --git a/crates/icrate/src/additions/AppKit/application.rs b/crates/icrate/src/additions/AppKit/application.rs new file mode 100644 index 000000000..f56cefe17 --- /dev/null +++ b/crates/icrate/src/additions/AppKit/application.rs @@ -0,0 +1,8 @@ +#[allow(unused_imports)] +use crate::common::*; + +#[cfg(feature = "AppKit_NSResponder")] +pub fn NSApp(mtm: crate::Foundation::MainThreadMarker) -> Id { + // TODO: Use the `NSApp` static + crate::AppKit::NSApplication::sharedApplication(mtm) +} diff --git a/crates/icrate/src/additions/AppKit/image.rs b/crates/icrate/src/additions/AppKit/image.rs new file mode 100644 index 000000000..748ad3eea --- /dev/null +++ b/crates/icrate/src/additions/AppKit/image.rs @@ -0,0 +1,17 @@ +use crate::common::*; + +use super::TARGET_ABI_USES_IOS_VALUES; + +ns_enum!( + #[underlying(NSInteger)] + #[allow(clippy::bool_to_int_with_if)] + pub enum NSImageResizingMode { + #[doc(alias = "NSImageResizingModeStretch")] + Stretch = if TARGET_ABI_USES_IOS_VALUES { 0 } else { 1 }, + #[doc(alias = "NSImageResizingModeTile")] + Tile = if TARGET_ABI_USES_IOS_VALUES { 1 } else { 0 }, + } +); + +#[cfg(feature = "Foundation_NSObject")] +unsafe impl crate::Foundation::NSCoding for crate::AppKit::NSImage {} diff --git a/crates/icrate/src/additions/AppKit/mod.rs b/crates/icrate/src/additions/AppKit/mod.rs index 5fa656e86..62ad2afe2 100644 --- a/crates/icrate/src/additions/AppKit/mod.rs +++ b/crates/icrate/src/additions/AppKit/mod.rs @@ -29,11 +29,13 @@ #![doc = include_str!("../../../examples/nspasteboard.rs")] //! ``` #![allow(non_snake_case)] +#![allow(unused_imports)] +#![allow(unreachable_pub)] +#[allow(unreachable_pub)] +#[allow(unused_imports)] pub use crate::generated::AppKit::*; -use crate::common::*; - #[cfg_attr(feature = "gnustep-1-7", link(name = "gnustep-gui", kind = "dylib"))] extern "C" {} @@ -41,54 +43,31 @@ extern "C" {} /// /// // TODO: Make this work with mac catalyst -const TARGET_ABI_USES_IOS_VALUES: bool = +#[allow(dead_code)] +pub(crate) const TARGET_ABI_USES_IOS_VALUES: bool = !cfg!(any(target_arch = "x86", target_arch = "x86_64")) || cfg!(not(target_os = "macos")); -ns_enum!( - #[underlying(NSInteger)] - #[allow(clippy::bool_to_int_with_if)] - pub enum NSImageResizingMode { - #[doc(alias = "NSImageResizingModeStretch")] - Stretch = if TARGET_ABI_USES_IOS_VALUES { 0 } else { 1 }, - #[doc(alias = "NSImageResizingModeTile")] - Tile = if TARGET_ABI_USES_IOS_VALUES { 1 } else { 0 }, - } -); - -ns_enum!( - #[underlying(NSInteger)] - #[allow(clippy::bool_to_int_with_if)] - pub enum NSTextAlignment { - #[doc(alias = "NSTextAlignmentLeft")] - Left = 0, - #[doc(alias = "NSTextAlignmentRight")] - Right = if TARGET_ABI_USES_IOS_VALUES { 2 } else { 1 }, - #[doc(alias = "NSTextAlignmentCenter")] - Center = if TARGET_ABI_USES_IOS_VALUES { 1 } else { 2 }, - #[doc(alias = "NSTextAlignmentJustified")] - Justified = 3, - #[doc(alias = "NSTextAlignmentNatural")] - Natural = 4, - } -); - +#[cfg(feature = "AppKit_NSApplication")] +mod application; #[cfg(feature = "AppKit_NSImage")] -unsafe impl crate::Foundation::NSCoding for crate::AppKit::NSImage {} +mod image; +#[cfg(feature = "AppKit_NSText")] +mod text; #[cfg(feature = "AppKit_NSApplication")] -pub fn NSApp(mtm: crate::Foundation::MainThreadMarker) -> Id { - // TODO: Use the `NSApp` static - crate::AppKit::NSApplication::sharedApplication(mtm) -} +pub use self::application::*; +#[cfg(feature = "AppKit_NSImage")] +pub use self::image::*; +#[cfg(feature = "AppKit_NSText")] +pub use self::text::*; #[cfg(test)] mod tests { - use super::*; - - use crate::AppKit::NSAccessibilityElementProtocol; - #[test] + #[cfg(feature = "AppKit_NSAccessibilityProtocols")] fn accessibility_element_protocol() { + use crate::AppKit::NSAccessibilityElementProtocol; + use objc2::ProtocolType; let actual = ::NAME; assert_eq!(actual, "NSAccessibilityElement"); } diff --git a/crates/icrate/src/additions/AppKit/text.rs b/crates/icrate/src/additions/AppKit/text.rs new file mode 100644 index 000000000..59ef7266b --- /dev/null +++ b/crates/icrate/src/additions/AppKit/text.rs @@ -0,0 +1,20 @@ +use crate::common::*; + +use super::TARGET_ABI_USES_IOS_VALUES; + +ns_enum!( + #[underlying(NSInteger)] + #[allow(clippy::bool_to_int_with_if)] + pub enum NSTextAlignment { + #[doc(alias = "NSTextAlignmentLeft")] + Left = 0, + #[doc(alias = "NSTextAlignmentRight")] + Right = if TARGET_ABI_USES_IOS_VALUES { 2 } else { 1 }, + #[doc(alias = "NSTextAlignmentCenter")] + Center = if TARGET_ABI_USES_IOS_VALUES { 1 } else { 2 }, + #[doc(alias = "NSTextAlignmentJustified")] + Justified = 3, + #[doc(alias = "NSTextAlignmentNatural")] + Natural = 4, + } +); diff --git a/crates/icrate/src/additions/AuthenticationServices/mod.rs b/crates/icrate/src/additions/AuthenticationServices/mod.rs index 9a75d6a81..4e13e8617 100644 --- a/crates/icrate/src/additions/AuthenticationServices/mod.rs +++ b/crates/icrate/src/additions/AuthenticationServices/mod.rs @@ -4,10 +4,13 @@ pub use crate::generated::AuthenticationServices::*; use crate::common::*; // TODO: UIViewController on iOS, NSViewController on macOS +#[cfg(all(feature = "AppKit_NSResponder", feature = "AppKit_NSViewController"))] pub type ASViewController = NSObject; // TODO: UIWindow on iOS, NSWindow on macOS +#[cfg(all(feature = "AppKit_NSResponder", feature = "AppKit_NSWindow"))] pub type ASPresentationAnchor = NSObject; // TODO: UIImage on iOS, NSImage on macOS +#[cfg(feature = "AppKit_NSImage")] pub type ASImage = NSObject; // TODO: UIControl on iOS, NSControl on macOS @@ -16,10 +19,18 @@ type ASControl = NSObject; extern_class!( #[derive(Debug, PartialEq, Eq, Hash)] - #[cfg(feature = "AuthenticationServices_ASCredentialProviderViewController")] + #[cfg(all( + feature = "AuthenticationServices_ASCredentialProviderViewController", + feature = "AppKit_NSResponder", + feature = "AppKit_NSViewController" + ))] pub struct ASCredentialProviderViewController; - #[cfg(feature = "AuthenticationServices_ASCredentialProviderViewController")] + #[cfg(all( + feature = "AuthenticationServices_ASCredentialProviderViewController", + feature = "AppKit_NSResponder", + feature = "AppKit_NSViewController" + ))] unsafe impl ClassType for ASCredentialProviderViewController { type Super = ASViewController; type Mutability = MainThreadOnly; @@ -28,10 +39,18 @@ extern_class!( extern_class!( #[derive(Debug, PartialEq, Eq, Hash)] - #[cfg(feature = "AuthenticationServices_ASAccountAuthenticationModificationViewController")] + #[cfg(all( + feature = "AuthenticationServices_ASAccountAuthenticationModificationViewController", + feature = "AppKit_NSResponder", + feature = "AppKit_NSViewController" + ))] pub struct ASAccountAuthenticationModificationViewController; - #[cfg(feature = "AuthenticationServices_ASAccountAuthenticationModificationViewController")] + #[cfg(all( + feature = "AuthenticationServices_ASAccountAuthenticationModificationViewController", + feature = "AppKit_NSResponder", + feature = "AppKit_NSViewController" + ))] unsafe impl ClassType for ASAccountAuthenticationModificationViewController { type Super = ASViewController; type Mutability = MainThreadOnly; @@ -40,10 +59,20 @@ extern_class!( extern_class!( #[derive(Debug, PartialEq, Eq, Hash)] - #[cfg(feature = "AuthenticationServices_ASAuthorizationAppleIDButton")] + #[cfg(all( + feature = "AuthenticationServices_ASAuthorizationAppleIDButton", + feature = "AppKit_NSControl", + feature = "AppKit_NSResponder", + feature = "AppKit_NSView" + ))] pub struct ASAuthorizationAppleIDButton; - #[cfg(feature = "AuthenticationServices_ASAuthorizationAppleIDButton")] + #[cfg(all( + feature = "AuthenticationServices_ASAuthorizationAppleIDButton", + feature = "AppKit_NSControl", + feature = "AppKit_NSResponder", + feature = "AppKit_NSView" + ))] unsafe impl ClassType for ASAuthorizationAppleIDButton { type Super = ASControl; type Mutability = MainThreadOnly; diff --git a/crates/icrate/src/additions/Foundation/array.rs b/crates/icrate/src/additions/Foundation/array.rs index adfbe97fd..4d2c85285 100644 --- a/crates/icrate/src/additions/Foundation/array.rs +++ b/crates/icrate/src/additions/Foundation/array.rs @@ -1,9 +1,9 @@ //! Utilities for the `NSArray` and `NSMutableArray` classes. -#![cfg(feature = "Foundation_NSArray")] use alloc::vec::Vec; use core::fmt; -use core::mem; -use core::ops::{Index, IndexMut, Range}; +#[cfg(feature = "Foundation_NSRange")] +use core::ops::Range; +use core::ops::{Index, IndexMut}; use objc2::mutability::{IsMutable, IsRetainable}; use objc2::rc::IdFromIterator; @@ -11,7 +11,6 @@ use objc2::rc::IdFromIterator; use super::iter; use super::util; use crate::common::*; -#[cfg(feature = "Foundation_NSMutableArray")] use crate::Foundation::NSMutableArray; use crate::Foundation::{self, NSArray}; @@ -59,12 +58,14 @@ impl NSArray { } #[doc(alias = "getObjects:range:")] + #[cfg(feature = "Foundation_NSRange")] pub fn to_vec(&self) -> Vec<&T> { // SAFETY: The range is know to be in bounds unsafe { self.objects_in_range_unchecked(0..self.len()) } } #[doc(alias = "getObjects:range:")] + #[cfg(feature = "Foundation_NSRange")] pub fn to_vec_retained(&self) -> Vec> where T: IsIdCloneable, @@ -82,7 +83,6 @@ impl NSArray { // duplicate those. } -#[cfg(feature = "Foundation_NSMutableArray")] impl NSMutableArray { pub fn from_vec(mut vec: Vec>) -> Id { let len = vec.len(); @@ -111,6 +111,7 @@ impl NSMutableArray { unsafe { Self::initWithObjects_count(Self::alloc(), ptr, len) } } + #[cfg(feature = "Foundation_NSRange")] pub fn into_vec(array: Id) -> Vec> { // SAFETY: We've consumed the array, so taking ownership of the // returned values is safe. @@ -221,17 +222,19 @@ extern_methods!( ); impl NSArray { + #[cfg(feature = "Foundation_NSRange")] unsafe fn objects_in_range_unchecked(&self, range: Range) -> Vec<&T> { let range = Foundation::NSRange::from(range); let mut vec: Vec> = Vec::with_capacity(range.length); unsafe { self.getObjects_range(NonNull::new(vec.as_mut_ptr()).unwrap(), range); vec.set_len(range.length); - mem::transmute(vec) + core::mem::transmute(vec) } } #[doc(alias = "getObjects:range:")] + #[cfg(feature = "Foundation_NSRange")] pub fn objects_in_range(&self, range: Range) -> Option> { if range.end > self.len() { return None; @@ -241,7 +244,6 @@ impl NSArray { } } -#[cfg(feature = "Foundation_NSMutableArray")] impl NSMutableArray { #[doc(alias = "addObject:")] pub fn push(&mut self, obj: Id) { @@ -367,7 +369,6 @@ unsafe impl iter::FastEnumerationHelper for NSArray { } } -#[cfg(feature = "Foundation_NSMutableArray")] unsafe impl iter::FastEnumerationHelper for NSMutableArray { type Item = T; @@ -414,7 +415,6 @@ __impl_into_iter! { type IntoIter = Iter<'_, T>; } - #[cfg(feature = "Foundation_NSMutableArray")] impl IntoIterator for &NSMutableArray { type IntoIter = Iter<'_, T>; } @@ -423,7 +423,6 @@ __impl_into_iter! { type IntoIter = IterMut<'_, T>; } - #[cfg(feature = "Foundation_NSMutableArray")] impl IntoIterator for &mut NSMutableArray { type IntoIter = IterMut<'_, T>; } @@ -432,7 +431,6 @@ __impl_into_iter! { type IntoIter = IntoIter; } - #[cfg(feature = "Foundation_NSMutableArray")] impl IntoIterator for Id> { type IntoIter = IntoIter; } @@ -446,7 +444,6 @@ impl Index for NSArray { } } -#[cfg(feature = "Foundation_NSMutableArray")] impl Index for NSMutableArray { type Output = T; @@ -461,7 +458,6 @@ impl IndexMut for NSArray { } } -#[cfg(feature = "Foundation_NSMutableArray")] impl IndexMut for NSMutableArray { fn index_mut(&mut self, index: usize) -> &mut T { self.get_mut(index).unwrap() @@ -475,14 +471,19 @@ impl fmt::Debug for NSArray { } } -#[cfg(feature = "Foundation_NSMutableArray")] +impl fmt::Debug for NSMutableArray { + #[inline] + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + fmt::Debug::fmt(&**self, f) + } +} + impl Extend> for NSMutableArray { fn extend>>(&mut self, iter: I) { iter.into_iter().for_each(move |item| self.push(item)) } } -#[cfg(feature = "Foundation_NSMutableArray")] impl<'a, T: Message + IsRetainable> Extend<&'a T> for NSMutableArray { fn extend>(&mut self, iter: I) { // SAFETY: Because of the `T: IsRetainable` bound, it is safe for the @@ -506,7 +507,6 @@ impl IdFromIterator> for NSArray { } } -#[cfg(feature = "Foundation_NSMutableArray")] impl<'a, T: Message + IsRetainable + 'a> IdFromIterator<&'a T> for NSMutableArray { fn id_from_iter>(iter: I) -> Id { let vec = Vec::from_iter(iter); @@ -514,7 +514,6 @@ impl<'a, T: Message + IsRetainable + 'a> IdFromIterator<&'a T> for NSMutableArra } } -#[cfg(feature = "Foundation_NSMutableArray")] impl IdFromIterator> for NSMutableArray { fn id_from_iter>>(iter: I) -> Id { let vec = Vec::from_iter(iter); diff --git a/crates/icrate/src/additions/Foundation/attributed_string.rs b/crates/icrate/src/additions/Foundation/attributed_string.rs index d999f413c..7e7c01f0f 100644 --- a/crates/icrate/src/additions/Foundation/attributed_string.rs +++ b/crates/icrate/src/additions/Foundation/attributed_string.rs @@ -1,8 +1,8 @@ -#![cfg(feature = "Foundation_NSAttributedString")] +use core::fmt; use core::panic::{RefUnwindSafe, UnwindSafe}; use crate::common::*; -use crate::Foundation::{self, NSAttributedString, NSAttributedStringKey}; +use crate::Foundation::*; // SAFETY: `NSAttributedString` is immutable and `NSMutableAttributedString` // can only be mutated from `&mut` methods. @@ -26,8 +26,8 @@ impl NSAttributedString { #[cfg(feature = "Foundation_NSDictionary")] #[cfg(feature = "Foundation_NSString")] pub unsafe fn new_with_attributes( - string: &Foundation::NSString, - attributes: &Foundation::NSDictionary, + string: &NSString, + attributes: &NSDictionary, ) -> Id { unsafe { Self::initWithString_attributes(Self::alloc(), string, Some(attributes)) } } @@ -35,18 +35,17 @@ impl NSAttributedString { /// Creates a new attributed string without any attributes. #[doc(alias = "initWithString:")] #[cfg(feature = "Foundation_NSString")] - pub fn from_nsstring(string: &Foundation::NSString) -> Id { + pub fn from_nsstring(string: &NSString) -> Id { Self::initWithString(Self::alloc(), string) } } -#[cfg(feature = "Foundation_NSMutableAttributedString")] -impl Foundation::NSMutableAttributedString { +impl NSMutableAttributedString { // TODO: new_with_attributes #[doc(alias = "initWithString:")] #[cfg(feature = "Foundation_NSString")] - pub fn from_nsstring(string: &Foundation::NSString) -> Id { + pub fn from_nsstring(string: &NSString) -> Id { Self::initWithString(Self::alloc(), string) } @@ -55,3 +54,17 @@ impl Foundation::NSMutableAttributedString { Self::initWithAttributedString(Self::alloc(), attributed_string) } } + +impl fmt::Debug for NSAttributedString { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + // Use -[NSAttributedString description] since it is pretty good + let obj: &NSObject = self; + fmt::Debug::fmt(obj, f) + } +} + +impl fmt::Debug for NSMutableAttributedString { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + fmt::Debug::fmt(&**self, f) + } +} diff --git a/crates/icrate/src/additions/Foundation/bundle.rs b/crates/icrate/src/additions/Foundation/bundle.rs index 476f2b9e3..84ef39550 100644 --- a/crates/icrate/src/additions/Foundation/bundle.rs +++ b/crates/icrate/src/additions/Foundation/bundle.rs @@ -1,8 +1,7 @@ -#![cfg(feature = "Foundation_NSBundle")] +use core::fmt; use core::panic::{RefUnwindSafe, UnwindSafe}; -use crate::common::*; -use crate::Foundation::{self, NSBundle}; +use crate::Foundation::NSBundle; impl UnwindSafe for NSBundle {} impl RefUnwindSafe for NSBundle {} @@ -10,8 +9,10 @@ impl RefUnwindSafe for NSBundle {} impl NSBundle { #[cfg(feature = "Foundation_NSString")] #[cfg(feature = "Foundation_NSDictionary")] - pub fn name(&self) -> Option> { - use Foundation::{NSCopying, NSString}; + #[cfg(feature = "Foundation_NSObject")] + pub fn name(&self) -> Option> { + use crate::Foundation::{NSCopying, NSString}; + use objc2::runtime::AnyObject; let info = self.infoDictionary()?; // TODO: Use ns_string! @@ -23,3 +24,10 @@ impl NSBundle { Some(name.copy()) } } + +impl fmt::Debug for NSBundle { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + // Delegate to NSObject + (**self).fmt(f) + } +} diff --git a/crates/icrate/src/additions/Foundation/copying.rs b/crates/icrate/src/additions/Foundation/copying.rs index 3c54531de..78d4ec941 100644 --- a/crates/icrate/src/additions/Foundation/copying.rs +++ b/crates/icrate/src/additions/Foundation/copying.rs @@ -1,5 +1,6 @@ use objc2::mutability::CounterpartOrSelf; use objc2::rc::Id; +#[cfg(feature = "Foundation_NSZone")] use objc2::runtime::NSZone; use objc2::{extern_protocol, ProtocolType}; @@ -35,6 +36,7 @@ extern_protocol!( /// /// The zone pointer must be valid or NULL. #[method_id(copyWithZone:)] + #[cfg(feature = "Foundation_NSZone")] unsafe fn copyWithZone(&self, zone: *mut NSZone) -> Id where Self: CounterpartOrSelf; @@ -74,6 +76,7 @@ extern_protocol!( /// /// The zone pointer must be valid or NULL. #[method_id(mutableCopyWithZone:)] + #[cfg(feature = "Foundation_NSZone")] unsafe fn mutableCopyWithZone(&self, zone: *mut NSZone) -> Id where Self: CounterpartOrSelf; diff --git a/crates/icrate/src/additions/Foundation/data.rs b/crates/icrate/src/additions/Foundation/data.rs index d759603f7..ac812c90e 100644 --- a/crates/icrate/src/additions/Foundation/data.rs +++ b/crates/icrate/src/additions/Foundation/data.rs @@ -1,12 +1,12 @@ -#![cfg(feature = "Foundation_NSData")] #[cfg(feature = "block2")] use alloc::vec::Vec; use core::fmt; #[cfg(feature = "block2")] use core::mem::ManuallyDrop; use core::ops::Index; -#[cfg(feature = "Foundation_NSMutableData")] -use core::ops::{IndexMut, Range}; +use core::ops::IndexMut; +#[cfg(feature = "Foundation_NSRange")] +use core::ops::Range; use core::panic::{RefUnwindSafe, UnwindSafe}; use core::slice::{self, SliceIndex}; @@ -16,9 +16,7 @@ use block2::{Block, RcBlock}; use objc2::rc::IdFromIterator; use crate::common::*; -use crate::Foundation::NSData; -#[cfg(feature = "Foundation_NSMutableData")] -use crate::Foundation::NSMutableData; +use crate::Foundation::{NSData, NSMutableData}; // SAFETY: `NSData` is immutable and `NSMutableData` can only be mutated from // `&mut` methods. @@ -35,7 +33,6 @@ extern_methods!( pub(crate) fn bytes_raw(&self) -> Option>; } - #[cfg(feature = "Foundation_NSMutableData")] unsafe impl NSMutableData { #[method(mutableBytes)] pub(crate) fn mutable_bytes_raw(&mut self) -> Option>; @@ -66,7 +63,6 @@ impl NSData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl NSMutableData { pub fn with_bytes(bytes: &[u8]) -> Id { let bytes_ptr = bytes.as_ptr() as *mut c_void; @@ -103,7 +99,6 @@ impl NSData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl NSMutableData { #[doc(alias = "mutableBytes")] pub fn bytes_mut(&mut self) -> &mut [u8] { @@ -128,6 +123,7 @@ impl NSMutableData { } #[doc(alias = "replaceBytesInRange:withBytes:length:")] + #[cfg(feature = "Foundation_NSRange")] pub fn replace_range(&mut self, range: Range, bytes: &[u8]) { // No need to verify the length of the range here, // `replaceBytesInRange:` zero-fills if out of bounds. @@ -135,6 +131,7 @@ impl NSMutableData { unsafe { self.replaceBytesInRange_withBytes_length(range.into(), ptr, bytes.len()) } } + #[cfg(feature = "Foundation_NSRange")] pub fn set_bytes(&mut self, bytes: &[u8]) { let len = self.len(); self.replace_range(0..len, bytes); @@ -147,14 +144,12 @@ impl AsRef<[u8]> for NSData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl AsRef<[u8]> for NSMutableData { fn as_ref(&self) -> &[u8] { self.bytes() } } -#[cfg(feature = "Foundation_NSMutableData")] impl AsMut<[u8]> for NSMutableData { fn as_mut(&mut self) -> &mut [u8] { self.bytes_mut() @@ -174,7 +169,6 @@ impl> Index for NSData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl> Index for NSMutableData { type Output = I::Output; @@ -184,7 +178,6 @@ impl> Index for NSMutableData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl> IndexMut for NSMutableData { #[inline] fn index_mut(&mut self, index: I) -> &mut Self::Output { @@ -200,6 +193,13 @@ impl fmt::Debug for NSData { } } +impl fmt::Debug for NSMutableData { + #[inline] + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + fmt::Debug::fmt(&**self, f) + } +} + impl<'a> IntoIterator for &'a NSData { type Item = &'a u8; type IntoIter = core::slice::Iter<'a, u8>; @@ -209,7 +209,6 @@ impl<'a> IntoIterator for &'a NSData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl<'a> IntoIterator for &'a NSMutableData { type Item = &'a u8; type IntoIter = core::slice::Iter<'a, u8>; @@ -219,7 +218,6 @@ impl<'a> IntoIterator for &'a NSMutableData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl<'a> IntoIterator for &'a mut NSMutableData { type Item = &'a mut u8; type IntoIter = core::slice::IterMut<'a, u8>; @@ -229,7 +227,6 @@ impl<'a> IntoIterator for &'a mut NSMutableData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl Extend for NSMutableData { /// You should use [`extend_from_slice`] whenever possible, it is more /// performant. @@ -242,7 +239,6 @@ impl Extend for NSMutableData { } // Vec also has this impl -#[cfg(feature = "Foundation_NSMutableData")] impl<'a> Extend<&'a u8> for NSMutableData { fn extend>(&mut self, iter: T) { let iterator = iter.into_iter(); @@ -250,7 +246,6 @@ impl<'a> Extend<&'a u8> for NSMutableData { } } -#[cfg(feature = "Foundation_NSMutableData")] impl std::io::Write for NSMutableData { fn write(&mut self, buf: &[u8]) -> std::io::Result { self.extend_from_slice(buf); @@ -275,7 +270,6 @@ impl IdFromIterator for NSData { } } -#[cfg(feature = "Foundation_NSMutableData")] #[cfg(feature = "block2")] impl IdFromIterator for NSMutableData { fn id_from_iter>(iter: I) -> Id { diff --git a/crates/icrate/src/additions/Foundation/debug.rs b/crates/icrate/src/additions/Foundation/debug.rs deleted file mode 100644 index 43a5f4129..000000000 --- a/crates/icrate/src/additions/Foundation/debug.rs +++ /dev/null @@ -1,97 +0,0 @@ -#![allow(unused_imports)] -use core::fmt; - -use crate::common::*; -use crate::Foundation; - -#[cfg(feature = "Foundation_NSAttributedString")] -impl fmt::Debug for Foundation::NSAttributedString { - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - // Use -[NSAttributedString description] since it is pretty good - let obj: &Foundation::NSObject = self; - fmt::Debug::fmt(obj, f) - } -} - -#[cfg(feature = "Foundation_NSBundle")] -impl fmt::Debug for Foundation::NSBundle { - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - // Delegate to NSObject - (**self).fmt(f) - } -} - -#[cfg(feature = "Foundation_NSMutableArray")] -impl fmt::Debug for Foundation::NSMutableArray { - #[inline] - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - fmt::Debug::fmt(&**self, f) - } -} - -#[cfg(feature = "Foundation_NSMutableAttributedString")] -impl fmt::Debug for Foundation::NSMutableAttributedString { - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - fmt::Debug::fmt(&**self, f) - } -} - -#[cfg(feature = "Foundation_NSMutableData")] -impl fmt::Debug for Foundation::NSMutableData { - #[inline] - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - fmt::Debug::fmt(&**self, f) - } -} - -#[cfg(feature = "Foundation_NSMutableDictionary")] -impl fmt::Debug - for Foundation::NSMutableDictionary -{ - #[inline] - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - fmt::Debug::fmt(&**self, f) - } -} - -#[cfg(feature = "Foundation_NSCountedSet")] -impl fmt::Debug for Foundation::NSCountedSet { - #[inline] - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - fmt::Debug::fmt(&**self, f) - } -} - -#[cfg(feature = "Foundation_NSMutableSet")] -impl fmt::Debug for Foundation::NSMutableSet { - #[inline] - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - fmt::Debug::fmt(&**self, f) - } -} - -#[cfg(feature = "Foundation_NSMutableString")] -impl fmt::Debug for Foundation::NSMutableString { - #[inline] - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - fmt::Debug::fmt(&**self, f) - } -} - -#[cfg(feature = "Foundation_NSThread")] -impl fmt::Debug for Foundation::NSThread { - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - // Use -[NSThread description] since that includes the thread number - let obj: &Foundation::NSObject = self; - fmt::Debug::fmt(obj, f) - } -} - -#[cfg(feature = "Foundation_NSNumber")] -impl fmt::Debug for Foundation::NSNumber { - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - // Delegate to -[NSObject description] - // (happens to return the same as -[NSNumber stringValue]) - fmt::Debug::fmt(&***self, f) - } -} diff --git a/crates/icrate/src/additions/Foundation/dictionary.rs b/crates/icrate/src/additions/Foundation/dictionary.rs index ee13df597..cef49b47e 100644 --- a/crates/icrate/src/additions/Foundation/dictionary.rs +++ b/crates/icrate/src/additions/Foundation/dictionary.rs @@ -1,6 +1,6 @@ //! Utilities for the `NSDictionary` and `NSMutableDictionary` classes. -#![cfg(feature = "Foundation_NSDictionary")] use alloc::vec::Vec; +#[cfg(feature = "Foundation_NSObject")] use core::cmp::min; use core::fmt; use core::hash::Hash; @@ -8,15 +8,18 @@ use core::mem; use core::ops::{Index, IndexMut}; use core::ptr::{self, NonNull}; -use objc2::mutability::{CounterpartOrSelf, HasStableHash, IsIdCloneable, IsMutable, IsRetainable}; +#[cfg(feature = "Foundation_NSObject")] +use objc2::mutability::IsRetainable; +use objc2::mutability::{CounterpartOrSelf, HasStableHash, IsIdCloneable, IsMutable}; use super::iter; use super::util; use crate::common::*; -#[cfg(feature = "Foundation_NSMutableDictionary")] -use crate::Foundation::NSMutableDictionary; -use crate::Foundation::{NSCopying, NSDictionary}; +#[cfg(feature = "Foundation_NSObject")] +use crate::Foundation::NSCopying; +use crate::Foundation::{NSDictionary, NSMutableDictionary}; +#[cfg(feature = "Foundation_NSObject")] fn keys_to_ptr(keys: &[&Q]) -> *mut NonNull> where Q: Message + NSCopying, @@ -28,6 +31,7 @@ where keys } +#[cfg(feature = "Foundation_NSObject")] impl NSDictionary { pub fn from_vec(keys: &[&Q], mut objects: Vec>) -> Id where @@ -92,7 +96,7 @@ impl NSDictionary { } } -#[cfg(feature = "Foundation_NSMutableDictionary")] +#[cfg(feature = "Foundation_NSObject")] impl NSMutableDictionary { pub fn from_vec(keys: &[&Q], mut objects: Vec>) -> Id where @@ -170,17 +174,11 @@ extern_methods!( /// # Examples /// #[cfg_attr( - all( - feature = "Foundation_NSMutableDictionary", - feature = "Foundation_NSMutableString" - ), + all(feature = "Foundation_NSString", feature = "Foundation_NSObject"), doc = "```" )] #[cfg_attr( - not(all( - feature = "Foundation_NSMutableDictionary", - feature = "Foundation_NSMutableString" - )), + not(all(feature = "Foundation_NSString", feature = "Foundation_NSObject")), doc = "```ignore" )] /// use icrate::Foundation::{ns_string, NSMutableDictionary, NSMutableString, NSString}; @@ -237,17 +235,11 @@ impl NSDictionary { /// # Examples /// #[cfg_attr( - all( - feature = "Foundation_NSMutableDictionary", - feature = "Foundation_NSMutableString" - ), + all(feature = "Foundation_NSString", feature = "Foundation_NSObject"), doc = "```" )] #[cfg_attr( - not(all( - feature = "Foundation_NSMutableDictionary", - feature = "Foundation_NSMutableString" - )), + not(all(feature = "Foundation_NSString", feature = "Foundation_NSObject")), doc = "```ignore" )] /// use icrate::Foundation::{ns_string, NSMutableDictionary, NSMutableString, NSString}; @@ -294,11 +286,7 @@ impl NSDictionary { /// /// # Examples /// - #[cfg_attr(all(feature = "Foundation_NSMutableDictionary"), doc = "```")] - #[cfg_attr( - not(all(feature = "Foundation_NSMutableDictionary")), - doc = "```ignore" - )] + /// ``` /// use icrate::Foundation::{ns_string, NSMutableDictionary, NSObject, NSString}; /// /// let mut dict = NSMutableDictionary::new(); @@ -317,7 +305,6 @@ impl NSDictionary { } } -#[cfg(feature = "Foundation_NSMutableDictionary")] impl NSMutableDictionary { /// Inserts a key-value pair into the dictionary. /// @@ -333,6 +320,7 @@ impl NSMutableDictionary) -> Option> where @@ -363,6 +351,7 @@ impl NSMutableDictionary Option> where @@ -386,7 +375,14 @@ impl NSMutableDictionary iter::FastEnumerationHelper for NSDictionary } } -#[cfg(feature = "Foundation_NSMutableDictionary")] unsafe impl iter::FastEnumerationHelper for NSMutableDictionary { // The same goes for mutable dictionaries. type Item = K; @@ -569,7 +564,6 @@ impl<'a, K: Message + Eq + Hash, V: Message> Index<&'a K> for NSDictionary } } -#[cfg(feature = "Foundation_NSMutableDictionary")] impl<'a, K: Message + Eq + Hash, V: Message> Index<&'a K> for NSMutableDictionary { type Output = V; @@ -584,7 +578,6 @@ impl<'a, K: Message + Eq + Hash, V: Message + IsMutable> IndexMut<&'a K> for NSD } } -#[cfg(feature = "Foundation_NSMutableDictionary")] impl<'a, K: Message + Eq + Hash, V: Message + IsMutable> IndexMut<&'a K> for NSMutableDictionary { @@ -601,3 +594,10 @@ impl fmt::Debug for NSDictiona f.debug_map().entries(iter).finish() } } + +impl fmt::Debug for NSMutableDictionary { + #[inline] + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + fmt::Debug::fmt(&**self, f) + } +} diff --git a/crates/icrate/src/additions/Foundation/enumerator.rs b/crates/icrate/src/additions/Foundation/enumerator.rs index 6a3f09399..6bdc3842a 100644 --- a/crates/icrate/src/additions/Foundation/enumerator.rs +++ b/crates/icrate/src/additions/Foundation/enumerator.rs @@ -1,5 +1,4 @@ //! Utilities for the `NSEnumerator` class. -#![cfg(feature = "Foundation_NSEnumerator")] use super::iter; use crate::common::*; use crate::Foundation::NSEnumerator; diff --git a/crates/icrate/src/additions/Foundation/error.rs b/crates/icrate/src/additions/Foundation/error.rs index 54d615ca4..5ca5c162d 100644 --- a/crates/icrate/src/additions/Foundation/error.rs +++ b/crates/icrate/src/additions/Foundation/error.rs @@ -1,4 +1,3 @@ -#![cfg(feature = "Foundation_NSError")] use core::fmt; use core::panic::{RefUnwindSafe, UnwindSafe}; diff --git a/crates/icrate/src/additions/Foundation/exception.rs b/crates/icrate/src/additions/Foundation/exception.rs index 0e5d48998..bcdbe9f33 100644 --- a/crates/icrate/src/additions/Foundation/exception.rs +++ b/crates/icrate/src/additions/Foundation/exception.rs @@ -1,13 +1,13 @@ -#![cfg(feature = "Foundation_NSException")] +#[cfg(feature = "Foundation_NSString")] use core::fmt; use core::hint::unreachable_unchecked; use core::panic::{RefUnwindSafe, UnwindSafe}; use objc2::exception::Exception; -use objc2::{msg_send_id, sel}; +use objc2::sel; use crate::common::*; -use crate::Foundation::{self, NSException, NSExceptionName, NSObject, NSObjectProtocol}; +use crate::Foundation::{NSException, NSObject, NSObjectProtocol}; // SAFETY: Exception objects are immutable data containers, and documented as // thread safe. @@ -32,12 +32,12 @@ impl NSException { #[cfg(feature = "Foundation_NSString")] #[cfg(feature = "Foundation_NSDictionary")] pub fn new( - name: &NSExceptionName, - reason: Option<&Foundation::NSString>, - user_info: Option<&Foundation::NSDictionary>, + name: &crate::Foundation::NSExceptionName, + reason: Option<&crate::Foundation::NSString>, + user_info: Option<&crate::Foundation::NSDictionary>, ) -> Option> { unsafe { - msg_send_id![ + objc2::msg_send_id![ Self::alloc(), initWithName: name, reason: reason, diff --git a/crates/icrate/src/additions/Foundation/generics.rs b/crates/icrate/src/additions/Foundation/generics.rs index 0399ac9f8..9abab7dfc 100644 --- a/crates/icrate/src/additions/Foundation/generics.rs +++ b/crates/icrate/src/additions/Foundation/generics.rs @@ -227,13 +227,13 @@ __inner_extern_class!( __inner_extern_class!( #[derive(PartialEq, Eq, Hash)] - #[cfg(feature = "Foundation_NSCountedSet")] + #[cfg(feature = "Foundation_NSSet")] pub struct NSCountedSet { // Inherit auto traits from superclass. __superclass: NSMutableSet, } - #[cfg(feature = "Foundation_NSCountedSet")] + #[cfg(feature = "Foundation_NSSet")] unsafe impl ClassType for NSCountedSet { #[inherits(NSSet, NSObject)] type Super = NSMutableSet; diff --git a/crates/icrate/src/additions/Foundation/geometry.rs b/crates/icrate/src/additions/Foundation/geometry.rs index def6cb267..bfc50539b 100644 --- a/crates/icrate/src/additions/Foundation/geometry.rs +++ b/crates/icrate/src/additions/Foundation/geometry.rs @@ -14,7 +14,7 @@ type InnerFloat = f32; /// here for convenience. /// /// See [Apple's documentation](https://developer.apple.com/documentation/coregraphics/cgfloat?language=objc). -// Defined in CoreGraphics/CGBase.h +// Defined in CoreGraphics/CGBase.h and CoreFoundation/CFCGTypes.h // TODO: Use a newtype here? pub type CGFloat = InnerFloat; @@ -406,6 +406,7 @@ mod tests { // well (so that we're confident that the implementations are equivalent). #[test] #[cfg(any(all(feature = "apple", target_os = "macos"), feature = "gnustep-1-7"))] // or macabi + #[cfg(feature = "Foundation_NSGeometry")] fn test_partial_eq() { use crate::Foundation::{NSEqualPoints, NSEqualRects, NSEqualSizes}; diff --git a/crates/icrate/src/additions/Foundation/iter.rs b/crates/icrate/src/additions/Foundation/iter.rs index 59b317be0..48497be0a 100644 --- a/crates/icrate/src/additions/Foundation/iter.rs +++ b/crates/icrate/src/additions/Foundation/iter.rs @@ -814,7 +814,7 @@ macro_rules! __impl_into_iter { #[cfg(test)] #[cfg(feature = "Foundation_NSArray")] -#[cfg(feature = "Foundation_NSNumber")] +#[cfg(feature = "Foundation_NSValue")] mod tests { use super::*; use core::mem::size_of; diff --git a/crates/icrate/src/additions/Foundation/mod.rs b/crates/icrate/src/additions/Foundation/mod.rs index cbbff856d..c4cc2fb51 100644 --- a/crates/icrate/src/additions/Foundation/mod.rs +++ b/crates/icrate/src/additions/Foundation/mod.rs @@ -25,46 +25,72 @@ pub mod __macro_helpers; #[macro_use] mod iter; +#[cfg(feature = "Foundation_NSArray")] pub mod array; +#[cfg(feature = "Foundation_NSAttributedString")] mod attributed_string; +#[cfg(feature = "Foundation_NSBundle")] mod bundle; +#[cfg(feature = "Foundation_NSObjCRuntime")] mod comparison_result; +#[cfg(feature = "Foundation_NSObject")] mod copying; +#[cfg(feature = "Foundation_NSData")] mod data; -mod debug; +#[cfg(feature = "Foundation_NSDecimal")] mod decimal; +#[cfg(feature = "Foundation_NSDictionary")] pub mod dictionary; +#[cfg(feature = "Foundation_NSEnumerator")] pub mod enumerator; +#[cfg(feature = "Foundation_NSError")] mod error; +#[cfg(feature = "Foundation_NSException")] mod exception; +#[cfg(feature = "Foundation_NSEnumerator")] mod fast_enumeration_state; mod generics; +#[cfg(feature = "Foundation_NSGeometry")] mod geometry; mod macros; mod ns_consumed; +#[cfg(feature = "Foundation_NSValue")] mod number; +#[cfg(feature = "Foundation_NSProcessInfo")] mod process_info; +#[cfg(feature = "Foundation_NSRange")] mod range; +#[cfg(feature = "Foundation_NSSet")] pub mod set; +#[cfg(feature = "Foundation_NSString")] mod string; #[cfg(test)] mod tests; mod thread; +#[cfg(feature = "Foundation_NSObject")] mod to_owned; mod util; +#[cfg(feature = "Foundation_NSUUID")] mod uuid; +#[cfg(feature = "Foundation_NSValue")] mod value; pub use crate::generated::Foundation::*; +#[cfg(feature = "Foundation_NSObjCRuntime")] pub use self::comparison_result::NSComparisonResult; +#[cfg(feature = "Foundation_NSObject")] pub use self::copying::{NSCopying, NSMutableCopying}; +#[cfg(feature = "Foundation_NSDecimal")] pub use self::decimal::NSDecimal; +#[cfg(feature = "Foundation_NSEnumerator")] pub use self::fast_enumeration_state::NSFastEnumerationState; pub use self::generics::*; +#[cfg(feature = "Foundation_NSGeometry")] pub use self::geometry::{CGFloat, CGPoint, CGRect, CGSize, NSPoint, NSRect, NSRectEdge, NSSize}; #[cfg(feature = "Foundation_NSMapTable")] pub use self::ns_consumed::NSFreeMapTable; +#[cfg(feature = "Foundation_NSRange")] pub use self::range::NSRange; pub use self::thread::MainThreadMarker; #[cfg(feature = "Foundation_NSThread")] @@ -83,9 +109,15 @@ pub use objc2::ffi::{NSInteger, NSUInteger}; // Special types that are stored in `objc2`, but really belong here #[doc(inline)] +#[cfg(feature = "Foundation_NSZone")] +pub use objc2::runtime::NSZone; +#[doc(inline)] #[cfg(feature = "Foundation_NSProxy")] pub use objc2::runtime::__NSProxy as NSProxy; -pub use objc2::runtime::{NSObject, NSObjectProtocol, NSZone}; +pub use objc2::runtime::{NSObject, NSObjectProtocol}; + +#[cfg_attr(feature = "gnustep-1-7", link(name = "gnustep-base", kind = "dylib"))] +extern "C" {} // MacTypes.h #[allow(unused)] @@ -96,6 +128,3 @@ pub(crate) type FourCharCode = u32; pub(crate) type OSType = FourCharCode; #[allow(unused)] pub(crate) type UTF32Char = u32; // Or maybe Rust's char? - -#[cfg_attr(feature = "gnustep-1-7", link(name = "gnustep-base", kind = "dylib"))] -extern "C" {} diff --git a/crates/icrate/src/additions/Foundation/number.rs b/crates/icrate/src/additions/Foundation/number.rs index 0d15e6f06..4272e2e50 100644 --- a/crates/icrate/src/additions/Foundation/number.rs +++ b/crates/icrate/src/additions/Foundation/number.rs @@ -1,4 +1,3 @@ -#![cfg(feature = "Foundation_NSNumber")] //! Note that due to limitations in Objective-C type encodings, it is not //! possible to distinguish between an `NSNumber` created from [`bool`], //! and one created from an [`i8`]/[`u8`]. You should use the getter @@ -24,7 +23,7 @@ use core::panic::{RefUnwindSafe, UnwindSafe}; use objc2::encode::Encoding; use crate::common::*; -use crate::Foundation::{CGFloat, NSNumber}; +use crate::Foundation::NSNumber; impl UnwindSafe for NSNumber {} impl RefUnwindSafe for NSNumber {} @@ -60,7 +59,8 @@ impl NSNumber { } #[inline] - pub fn new_cgfloat(val: CGFloat) -> Id { + #[cfg(feature = "Foundation_NSGeometry")] + pub fn new_cgfloat(val: crate::Foundation::CGFloat) -> Id { #[cfg(target_pointer_width = "64")] { Self::new_f64(val) @@ -103,7 +103,8 @@ impl NSNumber { } #[inline] - pub fn as_cgfloat(&self) -> CGFloat { + #[cfg(feature = "Foundation_NSGeometry")] + pub fn as_cgfloat(&self) -> crate::Foundation::CGFloat { #[cfg(target_pointer_width = "64")] { self.as_f64() @@ -259,3 +260,11 @@ impl fmt::Display for NSNumber { fmt::Display::fmt(&self.stringValue(), f) } } + +impl fmt::Debug for NSNumber { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + // Delegate to -[NSObject description] + // (happens to return the same as -[NSNumber stringValue]) + fmt::Debug::fmt(&***self, f) + } +} diff --git a/crates/icrate/src/additions/Foundation/process_info.rs b/crates/icrate/src/additions/Foundation/process_info.rs index a3262e928..fd441b2b5 100644 --- a/crates/icrate/src/additions/Foundation/process_info.rs +++ b/crates/icrate/src/additions/Foundation/process_info.rs @@ -1,4 +1,3 @@ -#![cfg(feature = "Foundation_NSProcessInfo")] use core::fmt; use core::panic::{RefUnwindSafe, UnwindSafe}; diff --git a/crates/icrate/src/additions/Foundation/set.rs b/crates/icrate/src/additions/Foundation/set.rs index 7b09ab91d..f2215c6c4 100644 --- a/crates/icrate/src/additions/Foundation/set.rs +++ b/crates/icrate/src/additions/Foundation/set.rs @@ -1,5 +1,4 @@ //! Utilities for the `NSSet` and `NSMutableSet` classes. -#![cfg(feature = "Foundation_NSSet")] use alloc::vec::Vec; use core::fmt; use core::hash::Hash; @@ -10,9 +9,7 @@ use objc2::rc::IdFromIterator; use super::iter; use super::util; use crate::common::*; -#[cfg(feature = "Foundation_NSMutableSet")] -use crate::Foundation::NSMutableSet; -use crate::Foundation::NSSet; +use crate::Foundation::{NSCountedSet, NSMutableSet, NSSet}; impl NSSet { /// Returns the number of elements in the set. @@ -160,7 +157,6 @@ impl NSSet { } } -#[cfg(feature = "Foundation_NSMutableSet")] impl NSMutableSet { /// Creates an [`NSMutableSet`] from a vector. /// @@ -357,14 +353,14 @@ extern_methods!( } ); -#[cfg(feature = "Foundation_NSMutableSet")] impl NSMutableSet { /// Add a value to the set. Returns whether the value was /// newly inserted. /// /// # Examples /// - /// ``` + #[cfg_attr(feature = "Foundation_NSValue", doc = "```")] + #[cfg_attr(not(feature = "Foundation_NSValue"), doc = "```ignore")] /// use icrate::Foundation::{NSNumber, NSMutableSet}; /// /// let mut set = NSMutableSet::new(); @@ -477,7 +473,6 @@ unsafe impl iter::FastEnumerationHelper for NSSet { } } -#[cfg(feature = "Foundation_NSMutableSet")] unsafe impl iter::FastEnumerationHelper for NSMutableSet { type Item = T; @@ -516,7 +511,6 @@ __impl_into_iter! { type IntoIter = Iter<'_, T>; } - #[cfg(feature = "Foundation_NSMutableSet")] impl IntoIterator for &NSMutableSet { type IntoIter = Iter<'_, T>; } @@ -525,7 +519,6 @@ __impl_into_iter! { type IntoIter = IntoIter; } - #[cfg(feature = "Foundation_NSMutableSet")] impl IntoIterator for Id> { type IntoIter = IntoIter; } @@ -538,7 +531,20 @@ impl fmt::Debug for NSSet { } } -#[cfg(feature = "Foundation_NSMutableSet")] +impl fmt::Debug for NSMutableSet { + #[inline] + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + fmt::Debug::fmt(&**self, f) + } +} + +impl fmt::Debug for NSCountedSet { + #[inline] + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + fmt::Debug::fmt(&**self, f) + } +} + impl Extend> for NSMutableSet { fn extend>>(&mut self, iter: I) { iter.into_iter().for_each(move |item| { @@ -547,7 +553,6 @@ impl Extend> for NSMutableSet { } } -#[cfg(feature = "Foundation_NSMutableSet")] impl<'a, T: Message + Eq + Hash + HasStableHash + IsRetainable> Extend<&'a T> for NSMutableSet { fn extend>(&mut self, iter: I) { iter.into_iter().for_each(move |item| { @@ -572,7 +577,6 @@ impl IdFromIterator> for NSSet } } -#[cfg(feature = "Foundation_NSMutableSet")] impl<'a, T: Message + Eq + Hash + HasStableHash + IsRetainable + 'a> IdFromIterator<&'a T> for NSMutableSet { @@ -582,7 +586,6 @@ impl<'a, T: Message + Eq + Hash + HasStableHash + IsRetainable + 'a> IdFromItera } } -#[cfg(feature = "Foundation_NSMutableSet")] impl IdFromIterator> for NSMutableSet { fn id_from_iter>>(iter: I) -> Id { let vec = Vec::from_iter(iter); diff --git a/crates/icrate/src/additions/Foundation/string.rs b/crates/icrate/src/additions/Foundation/string.rs index ff9257c52..631d77f0e 100644 --- a/crates/icrate/src/additions/Foundation/string.rs +++ b/crates/icrate/src/additions/Foundation/string.rs @@ -1,8 +1,6 @@ -#![cfg(feature = "Foundation_NSString")] use core::cmp; use core::ffi::c_void; use core::fmt; -#[cfg(feature = "Foundation_NSMutableString")] use core::ops::AddAssign; use core::panic::RefUnwindSafe; use core::panic::UnwindSafe; @@ -19,9 +17,7 @@ use objc2::rc::{autoreleasepool_leaking, AutoreleasePool}; use objc2::runtime::__nsstring::{nsstring_len, nsstring_to_str, UTF8_ENCODING}; use crate::common::*; -#[cfg(feature = "Foundation_NSMutableString")] -use crate::Foundation::NSMutableString; -use crate::Foundation::NSString; +use crate::Foundation::{NSMutableString, NSString}; // SAFETY: `NSString` is immutable and `NSMutableString` can only be mutated // from `&mut` methods. @@ -134,7 +130,6 @@ impl NSString { // See https://github.com/drewcrawford/foundationr/blob/b27683417a35510e8e5d78a821f081905b803de6/src/nsstring.rs } -#[cfg(feature = "Foundation_NSMutableString")] impl NSMutableString { /// Creates a new [`NSMutableString`] by copying the given string slice. #[doc(alias = "initWithBytes:length:encoding:")] @@ -159,7 +154,6 @@ unsafe fn init_with_str(obj: Allocated, string: &str) -> Id { } } -#[cfg(feature = "Foundation_NSMutableString")] impl PartialEq for NSMutableString { #[inline] fn eq(&self, other: &NSString) -> bool { @@ -167,7 +161,6 @@ impl PartialEq for NSMutableString { } } -#[cfg(feature = "Foundation_NSMutableString")] impl PartialEq for NSString { #[inline] fn eq(&self, other: &NSMutableString) -> bool { @@ -188,7 +181,6 @@ impl Ord for NSString { } } -#[cfg(feature = "Foundation_NSMutableString")] impl PartialOrd for NSMutableString { #[inline] fn partial_cmp(&self, other: &Self) -> Option { @@ -196,7 +188,6 @@ impl PartialOrd for NSMutableString { } } -#[cfg(feature = "Foundation_NSMutableString")] impl PartialOrd for NSMutableString { #[inline] fn partial_cmp(&self, other: &NSString) -> Option { @@ -204,7 +195,6 @@ impl PartialOrd for NSMutableString { } } -#[cfg(feature = "Foundation_NSMutableString")] impl PartialOrd for NSString { #[inline] fn partial_cmp(&self, other: &NSMutableString) -> Option { @@ -212,7 +202,6 @@ impl PartialOrd for NSString { } } -#[cfg(feature = "Foundation_NSMutableString")] impl Ord for NSMutableString { #[inline] fn cmp(&self, other: &Self) -> cmp::Ordering { @@ -224,7 +213,6 @@ impl Ord for NSMutableString { // See `fruity`'s implementation: // https://github.com/nvzqz/fruity/blob/320efcf715c2c5fbd2f3084f671f2be2e03a6f2b/src/foundation/ns_string/mod.rs#L69-L163 -#[cfg(feature = "Foundation_NSMutableString")] impl AddAssign<&NSString> for NSMutableString { #[inline] fn add_assign(&mut self, other: &NSString) { @@ -238,7 +226,6 @@ impl fmt::Display for NSString { } } -#[cfg(feature = "Foundation_NSMutableString")] impl fmt::Display for NSMutableString { #[inline] fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { @@ -252,7 +239,13 @@ impl fmt::Debug for NSString { } } -#[cfg(feature = "Foundation_NSMutableString")] +impl fmt::Debug for NSMutableString { + #[inline] + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + fmt::Debug::fmt(&**self, f) + } +} + impl fmt::Write for NSMutableString { fn write_str(&mut self, s: &str) -> fmt::Result { let nsstring = NSString::from_str(s); diff --git a/crates/icrate/src/additions/Foundation/tests/array.rs b/crates/icrate/src/additions/Foundation/tests/array.rs index c8ee8922f..b44319ce8 100644 --- a/crates/icrate/src/additions/Foundation/tests/array.rs +++ b/crates/icrate/src/additions/Foundation/tests/array.rs @@ -1,5 +1,6 @@ #![cfg(feature = "Foundation_NSArray")] -#![cfg(feature = "Foundation_NSNumber")] +#![cfg(feature = "Foundation_NSValue")] +#![cfg(feature = "Foundation_NSRange")] use alloc::vec::Vec; use alloc::{format, vec}; use core::ptr; diff --git a/crates/icrate/src/additions/Foundation/tests/attributed_string.rs b/crates/icrate/src/additions/Foundation/tests/attributed_string.rs index dd660cefd..4c4b7957d 100644 --- a/crates/icrate/src/additions/Foundation/tests/attributed_string.rs +++ b/crates/icrate/src/additions/Foundation/tests/attributed_string.rs @@ -31,7 +31,7 @@ fn test_from_nsstring() { } #[test] -#[cfg(feature = "Foundation_NSMutableAttributedString")] +#[cfg(feature = "Foundation_NSAttributedString")] fn test_copy() { use Foundation::{NSCopying, NSMutableCopying, NSObjectProtocol}; @@ -75,14 +75,14 @@ fn test_debug() { } #[test] -#[cfg(feature = "Foundation_NSMutableAttributedString")] +#[cfg(feature = "Foundation_NSAttributedString")] fn test_new_mutable() { let s = Foundation::NSMutableAttributedString::new(); assert_eq!(&s.string().to_string(), ""); } #[test] -#[cfg(feature = "Foundation_NSMutableAttributedString")] +#[cfg(feature = "Foundation_NSAttributedString")] #[cfg_attr( feature = "gnustep-1-7", ignore = "thread safety issues regarding initialization" diff --git a/crates/icrate/src/additions/Foundation/tests/dictionary.rs b/crates/icrate/src/additions/Foundation/tests/dictionary.rs index c15805c65..7b1607f44 100644 --- a/crates/icrate/src/additions/Foundation/tests/dictionary.rs +++ b/crates/icrate/src/additions/Foundation/tests/dictionary.rs @@ -1,5 +1,6 @@ #![cfg(feature = "Foundation_NSDictionary")] #![cfg(feature = "Foundation_NSString")] +#![cfg(feature = "Foundation_NSObject")] use alloc::{format, vec}; use objc2::rc::{autoreleasepool, Id}; diff --git a/crates/icrate/src/additions/Foundation/tests/error.rs b/crates/icrate/src/additions/Foundation/tests/error.rs index 6efdbac50..5779bbf78 100644 --- a/crates/icrate/src/additions/Foundation/tests/error.rs +++ b/crates/icrate/src/additions/Foundation/tests/error.rs @@ -2,15 +2,15 @@ #![cfg(feature = "Foundation_NSString")] use alloc::format; -use crate::Foundation::{ns_string, NSError, NSURLErrorDomain}; +use crate::Foundation::{ns_string, NSCocoaErrorDomain, NSError}; #[test] fn basic() { - let error = NSError::new(-999, unsafe { NSURLErrorDomain }); + let error = NSError::new(-999, unsafe { NSCocoaErrorDomain }); let expected = if cfg!(feature = "apple") { - "The operation couldn’t be completed. (NSURLErrorDomain error -999.)" + "The operation couldn’t be completed. (Cocoa error -999.)" } else { - "NSURLErrorDomain -999" + "NSCocoaErrorDomain -999" }; assert_eq!(format!("{error}"), expected); } diff --git a/crates/icrate/src/additions/Foundation/tests/mutable_array.rs b/crates/icrate/src/additions/Foundation/tests/mutable_array.rs index 1a90aca48..f1a884088 100644 --- a/crates/icrate/src/additions/Foundation/tests/mutable_array.rs +++ b/crates/icrate/src/additions/Foundation/tests/mutable_array.rs @@ -1,15 +1,15 @@ -#![cfg(feature = "Foundation_NSMutableArray")] +#![cfg(feature = "Foundation_NSArray")] use alloc::vec; use objc2::rc::{autoreleasepool, Allocated}; use objc2::{msg_send, ClassType}; -#[cfg(feature = "Foundation_NSNumber")] +#[cfg(feature = "Foundation_NSValue")] use crate::Foundation::NSNumber; use crate::Foundation::{self, NSMutableArray, NSObject}; #[test] -#[cfg(feature = "Foundation_NSNumber")] +#[cfg(feature = "Foundation_NSValue")] fn test_creation() { let _ = >::from_vec(vec![]); let _ = NSMutableArray::from_vec(vec![NSNumber::new_u8(4), NSNumber::new_u8(2)]); @@ -22,7 +22,7 @@ fn test_creation() { } #[test] -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSString")] #[cfg_attr( feature = "gnustep-1-7", ignore = "thread safety issues regarding initialization" @@ -38,7 +38,7 @@ fn test_containing_mutable_objects() { } #[test] -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSString")] #[cfg_attr( feature = "gnustep-1-7", ignore = "thread safety issues regarding initialization" @@ -97,6 +97,7 @@ fn test_threaded() { #[test] #[cfg(feature = "Foundation_NSString")] +#[cfg(feature = "Foundation_NSRange")] #[cfg_attr( feature = "gnustep-1-7", ignore = "thread safety issues regarding initialization" diff --git a/crates/icrate/src/additions/Foundation/tests/mutable_data.rs b/crates/icrate/src/additions/Foundation/tests/mutable_data.rs index 444ed378d..a11a31bce 100644 --- a/crates/icrate/src/additions/Foundation/tests/mutable_data.rs +++ b/crates/icrate/src/additions/Foundation/tests/mutable_data.rs @@ -1,4 +1,4 @@ -#![cfg(feature = "Foundation_NSMutableData")] +#![cfg(feature = "Foundation_NSData")] use objc2::rc::Id; use objc2::runtime::AnyObject; diff --git a/crates/icrate/src/additions/Foundation/tests/mutable_dictionary.rs b/crates/icrate/src/additions/Foundation/tests/mutable_dictionary.rs index 22ea1e9f0..7e48f1df8 100644 --- a/crates/icrate/src/additions/Foundation/tests/mutable_dictionary.rs +++ b/crates/icrate/src/additions/Foundation/tests/mutable_dictionary.rs @@ -1,5 +1,6 @@ -#![cfg(feature = "Foundation_NSMutableDictionary")] -#![cfg(feature = "Foundation_NSNumber")] +#![cfg(feature = "Foundation_NSDictionary")] +#![cfg(feature = "Foundation_NSValue")] +#![cfg(feature = "Foundation_NSObject")] use alloc::vec; use objc2::msg_send; @@ -18,7 +19,7 @@ fn sample_dict() -> Id> { ) } -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSString")] fn sample_dict_mut() -> Id> { NSMutableDictionary::from_vec( &[ @@ -35,7 +36,7 @@ fn sample_dict_mut() -> Id> = NSMutableDictionary::from_id_slice( @@ -51,7 +52,7 @@ fn test_new() { } #[test] -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSString")] fn test_get_mut() { let mut dict = sample_dict_mut(); @@ -61,7 +62,7 @@ fn test_get_mut() { } #[test] -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSString")] fn test_values_mut() { let mut dict = sample_dict_mut(); let vec = dict.values_vec_mut(); diff --git a/crates/icrate/src/additions/Foundation/tests/mutable_set.rs b/crates/icrate/src/additions/Foundation/tests/mutable_set.rs index a179567c1..92b596085 100644 --- a/crates/icrate/src/additions/Foundation/tests/mutable_set.rs +++ b/crates/icrate/src/additions/Foundation/tests/mutable_set.rs @@ -1,8 +1,8 @@ -#![cfg(feature = "Foundation_NSMutableSet")] +#![cfg(feature = "Foundation_NSSet")] #![cfg(feature = "Foundation_NSString")] use alloc::vec; -use crate::Foundation::{self, ns_string, NSMutableSet, NSSet, NSString}; +use crate::Foundation::{self, ns_string, NSMutableSet, NSString}; #[test] fn test_insert() { @@ -34,7 +34,7 @@ fn test_clear() { } #[test] -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSString")] fn test_into_vec() { let strs = vec![ Foundation::NSMutableString::from_str("one"), @@ -63,8 +63,9 @@ fn test_extend() { } #[test] +#[cfg(feature = "Foundation_NSObject")] fn test_mutable_copy() { - use Foundation::NSMutableCopying; + use Foundation::{NSMutableCopying, NSSet}; let set1 = NSSet::from_id_slice(&["one", "two", "three"].map(NSString::from_str)); let mut set2 = set1.mutableCopy(); diff --git a/crates/icrate/src/additions/Foundation/tests/mutable_string.rs b/crates/icrate/src/additions/Foundation/tests/mutable_string.rs index 272e0585c..26b3ac087 100644 --- a/crates/icrate/src/additions/Foundation/tests/mutable_string.rs +++ b/crates/icrate/src/additions/Foundation/tests/mutable_string.rs @@ -1,15 +1,11 @@ -#![cfg(feature = "Foundation_NSMutableString")] +#![cfg(feature = "Foundation_NSString")] use alloc::format; use alloc::string::ToString; use core::any::TypeId; -use std::ptr; use objc2::mutability::CounterpartOrSelf; -use objc2::rc::Id; -use crate::Foundation::{ - self, NSCopying, NSMutableCopying, NSMutableString, NSObjectProtocol, NSString, -}; +use crate::Foundation::{NSMutableString, NSString}; #[test] fn display_debug() { @@ -49,8 +45,10 @@ fn test_with_capacity() { } #[test] +#[cfg(feature = "Foundation_NSObject")] fn test_copy() { - use Foundation::{NSCopying, NSMutableCopying}; + use crate::Foundation::{NSCopying, NSMutableCopying, NSObjectProtocol}; + use objc2::rc::Id; let s1 = NSMutableString::from_str("abc"); let s2 = s1.copy(); @@ -84,13 +82,17 @@ fn counterpart() { } #[test] +#[cfg(all(feature = "Foundation_NSObject", feature = "Foundation_NSZone"))] fn test_copy_with_zone() { + use crate::Foundation::{NSCopying, NSMutableCopying, NSObjectProtocol}; + use objc2::rc::Id; + let s1 = NSString::from_str("abc"); - let s2 = unsafe { s1.copyWithZone(ptr::null_mut()) }; + let s2 = unsafe { s1.copyWithZone(core::ptr::null_mut()) }; assert_eq!(Id::as_ptr(&s1), Id::as_ptr(&s2)); assert!(s2.is_kind_of::()); - let s3 = unsafe { s1.mutableCopyWithZone(ptr::null_mut()) }; + let s3 = unsafe { s1.mutableCopyWithZone(core::ptr::null_mut()) }; assert_ne!(Id::as_ptr(&s1).cast::(), Id::as_ptr(&s3)); - assert!(s3.is_kind_of::()); + assert!(s3.is_kind_of::()); } diff --git a/crates/icrate/src/additions/Foundation/tests/number.rs b/crates/icrate/src/additions/Foundation/tests/number.rs index 94d30763b..0abe9cc78 100644 --- a/crates/icrate/src/additions/Foundation/tests/number.rs +++ b/crates/icrate/src/additions/Foundation/tests/number.rs @@ -1,4 +1,4 @@ -#![cfg(feature = "Foundation_NSNumber")] +#![cfg(feature = "Foundation_NSValue")] use alloc::format; use crate::Foundation::NSNumber; diff --git a/crates/icrate/src/additions/Foundation/tests/set.rs b/crates/icrate/src/additions/Foundation/tests/set.rs index 8e764a310..d6d59c45a 100644 --- a/crates/icrate/src/additions/Foundation/tests/set.rs +++ b/crates/icrate/src/additions/Foundation/tests/set.rs @@ -1,6 +1,6 @@ #![cfg(feature = "Foundation_NSSet")] #![cfg(feature = "Foundation_NSString")] -#![cfg(feature = "Foundation_NSNumber")] +#![cfg(feature = "Foundation_NSValue")] use alloc::vec::Vec; use alloc::{format, vec}; @@ -129,6 +129,7 @@ fn test_is_disjoint() { } #[test] +#[cfg(feature = "Foundation_NSArray")] fn test_to_array() { let nums = [1, 2, 3]; let set = NSSet::from_id_slice(&nums.map(NSNumber::new_i32)); @@ -155,7 +156,7 @@ fn test_into_iter() { } #[test] -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSString")] fn test_into_vec() { let strs = vec![ Foundation::NSString::from_str("one"), @@ -176,6 +177,7 @@ fn test_equality() { } #[test] +#[cfg(feature = "Foundation_NSObject")] fn test_copy() { use Foundation::NSCopying; diff --git a/crates/icrate/src/additions/Foundation/tests/string.rs b/crates/icrate/src/additions/Foundation/tests/string.rs index 385bd5c3e..44c68b169 100644 --- a/crates/icrate/src/additions/Foundation/tests/string.rs +++ b/crates/icrate/src/additions/Foundation/tests/string.rs @@ -1,11 +1,10 @@ #![cfg(feature = "Foundation_NSString")] use alloc::format; use alloc::string::ToString; -use std::ptr; use objc2::rc::autoreleasepool; -use crate::Foundation::{self, ns_string, NSString}; +use crate::Foundation::{ns_string, NSString}; #[test] fn test_equality() { @@ -72,10 +71,10 @@ fn test_interior_nul() { } #[test] -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSObject")] fn test_copy() { + use crate::Foundation::{NSCopying, NSMutableCopying, NSMutableString, NSObjectProtocol}; use objc2::rc::Id; - use Foundation::{NSCopying, NSMutableCopying, NSObjectProtocol}; let s1 = NSString::from_str("abc"); let s2 = s1.copy(); @@ -85,17 +84,18 @@ fn test_copy() { let s3 = s1.mutableCopy(); assert_ne!(Id::as_ptr(&s1), Id::as_ptr(&s3).cast()); - assert!(s3.is_kind_of::()); + assert!(s3.is_kind_of::()); } #[test] +#[cfg(feature = "Foundation_NSObject")] fn test_copy_nsstring_is_same() { - use Foundation::NSCopying; + use crate::Foundation::NSCopying; let string1 = NSString::from_str("Hello, world!"); let string2 = string1.copy(); assert!( - ptr::eq(&*string1, &*string2), + core::ptr::eq(&*string1, &*string2), "Cloned NSString didn't have the same address" ); } @@ -183,6 +183,7 @@ fn test_cmp() { } #[test] +#[cfg(feature = "Foundation_NSPathUtilities")] fn test_append() { let error_tag = NSString::from_str("Error: "); let error_string = NSString::from_str("premature end of file."); diff --git a/crates/icrate/src/additions/Foundation/tests/value.rs b/crates/icrate/src/additions/Foundation/tests/value.rs index 22aa70025..b256b1171 100644 --- a/crates/icrate/src/additions/Foundation/tests/value.rs +++ b/crates/icrate/src/additions/Foundation/tests/value.rs @@ -5,7 +5,7 @@ use core::str; use std::ffi::CStr; use std::os::raw::c_char; -use crate::Foundation::{NSPoint, NSRange, NSRect, NSSize, NSValue}; +use crate::Foundation::NSValue; #[test] fn basic() { @@ -47,20 +47,27 @@ fn test_debug() { } #[test] +#[cfg(feature = "Foundation_NSRange")] fn nsrange() { + use crate::Foundation::NSRange; let range = NSRange::from(1..2); let val = NSValue::new(range); assert_eq!(val.get_range(), Some(range)); - assert_eq!(val.get_point(), None); - assert_eq!(val.get_size(), None); - assert_eq!(val.get_rect(), None); + #[cfg(feature = "Foundation_NSGeometry")] + { + assert_eq!(val.get_point(), None); + assert_eq!(val.get_size(), None); + assert_eq!(val.get_rect(), None); + } // NSValue -getValue is broken on GNUStep for some types #[cfg(not(feature = "gnustep-1-7"))] assert_eq!(unsafe { val.get::() }, range); } #[test] +#[cfg(feature = "Foundation_NSGeometry")] fn nspoint() { + use crate::Foundation::NSPoint; let point = NSPoint::new(1.0, 2.0); let val = NSValue::new(point); assert_eq!(val.get_point(), Some(point)); @@ -69,7 +76,9 @@ fn nspoint() { } #[test] +#[cfg(feature = "Foundation_NSGeometry")] fn nssize() { + use crate::Foundation::NSSize; let point = NSSize::new(1.0, 2.0); let val = NSValue::new(point); assert_eq!(val.get_size(), Some(point)); @@ -78,7 +87,9 @@ fn nssize() { } #[test] +#[cfg(feature = "Foundation_NSGeometry")] fn nsrect() { + use crate::Foundation::{NSPoint, NSRect, NSSize}; let rect = NSRect::new(NSPoint::new(1.0, 2.0), NSSize::new(3.0, 4.0)); let val = NSValue::new(rect); assert_eq!(val.get_rect(), Some(rect)); diff --git a/crates/icrate/src/additions/Foundation/thread.rs b/crates/icrate/src/additions/Foundation/thread.rs index 9edda0b76..7dcaa7f46 100644 --- a/crates/icrate/src/additions/Foundation/thread.rs +++ b/crates/icrate/src/additions/Foundation/thread.rs @@ -23,6 +23,15 @@ impl UnwindSafe for NSThread {} #[cfg(feature = "Foundation_NSThread")] impl RefUnwindSafe for NSThread {} +#[cfg(feature = "Foundation_NSThread")] +impl fmt::Debug for NSThread { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + // Use -[NSThread description] since that includes the thread number + let obj: &crate::Foundation::NSObject = self; + fmt::Debug::fmt(obj, f) + } +} + /// Whether the application is multithreaded according to Cocoa. #[cfg(feature = "Foundation_NSThread")] pub fn is_multi_threaded() -> bool { diff --git a/crates/icrate/src/additions/Foundation/to_owned.rs b/crates/icrate/src/additions/Foundation/to_owned.rs index 97fae264c..fa67702f4 100644 --- a/crates/icrate/src/additions/Foundation/to_owned.rs +++ b/crates/icrate/src/additions/Foundation/to_owned.rs @@ -12,7 +12,7 @@ impl ToOwned for Foundation::NSArray { } } -#[cfg(feature = "Foundation_NSMutableArray")] +#[cfg(feature = "Foundation_NSArray")] impl ToOwned for Foundation::NSMutableArray { type Owned = Id; fn to_owned(&self) -> Self::Owned { @@ -28,7 +28,7 @@ impl ToOwned for Foundation::NSData { } } -#[cfg(feature = "Foundation_NSMutableData")] +#[cfg(feature = "Foundation_NSData")] impl ToOwned for Foundation::NSMutableData { type Owned = Id; fn to_owned(&self) -> Self::Owned { @@ -52,7 +52,7 @@ impl ToOwned for Foundation::NSSet { } } -#[cfg(feature = "Foundation_NSMutableSet")] +#[cfg(feature = "Foundation_NSSet")] impl ToOwned for Foundation::NSMutableSet { type Owned = Id; fn to_owned(&self) -> Self::Owned { @@ -68,7 +68,7 @@ impl ToOwned for Foundation::NSString { } } -#[cfg(feature = "Foundation_NSMutableString")] +#[cfg(feature = "Foundation_NSString")] impl ToOwned for Foundation::NSMutableString { type Owned = Id; fn to_owned(&self) -> Self::Owned { @@ -84,7 +84,7 @@ impl ToOwned for Foundation::NSAttributedString { } } -#[cfg(feature = "Foundation_NSMutableAttributedString")] +#[cfg(feature = "Foundation_NSAttributedString")] impl ToOwned for Foundation::NSMutableAttributedString { type Owned = Id; fn to_owned(&self) -> Self::Owned { @@ -108,7 +108,7 @@ impl ToOwned for Foundation::NSValue { } } -#[cfg(feature = "Foundation_NSNumber")] +#[cfg(feature = "Foundation_NSValue")] impl ToOwned for Foundation::NSNumber { type Owned = Id; fn to_owned(&self) -> Self::Owned { diff --git a/crates/icrate/src/additions/Foundation/uuid.rs b/crates/icrate/src/additions/Foundation/uuid.rs index e369087f8..5709719c8 100644 --- a/crates/icrate/src/additions/Foundation/uuid.rs +++ b/crates/icrate/src/additions/Foundation/uuid.rs @@ -1,4 +1,3 @@ -#![cfg(feature = "Foundation_NSUUID")] use core::fmt; use core::panic::{RefUnwindSafe, UnwindSafe}; diff --git a/crates/icrate/src/additions/Foundation/value.rs b/crates/icrate/src/additions/Foundation/value.rs index 78a69358d..a20efe61e 100644 --- a/crates/icrate/src/additions/Foundation/value.rs +++ b/crates/icrate/src/additions/Foundation/value.rs @@ -1,4 +1,3 @@ -#![cfg(feature = "Foundation_NSValue")] use alloc::string::ToString; use core::fmt; use core::hash; @@ -9,7 +8,7 @@ use std::ffi::{CStr, CString}; use objc2::encode::Encode; use crate::common::*; -use crate::Foundation::{NSPoint, NSRange, NSRect, NSSize, NSValue}; +use crate::Foundation::NSValue; // We can't implement any auto traits for NSValue, since it can contain an // arbitary object! @@ -24,12 +23,12 @@ impl NSValue { /// /// # Examples /// - /// Create an `NSValue` containing an [`NSPoint`]. + /// Create an `NSValue` containing an `i32`. /// /// ``` - /// use icrate::Foundation::{NSPoint, NSValue}; + /// use icrate::Foundation::NSValue; /// - /// let val = NSValue::new::(NSPoint::new(1.0, 1.0)); + /// let val = NSValue::new(42i32); /// ``` /// /// [`NSPoint`]: crate::Foundation::NSPoint @@ -102,8 +101,9 @@ impl NSValue { unsafe { value.assume_init() } } - pub fn get_range(&self) -> Option { - if self.contains_encoding::() { + #[cfg(feature = "Foundation_NSRange")] + pub fn get_range(&self) -> Option { + if self.contains_encoding::() { // SAFETY: We just checked that this contains an NSRange Some(unsafe { self.rangeValue() }) } else { @@ -111,8 +111,9 @@ impl NSValue { } } - pub fn get_point(&self) -> Option { - if self.contains_encoding::() { + #[cfg(feature = "Foundation_NSGeometry")] + pub fn get_point(&self) -> Option { + if self.contains_encoding::() { // SAFETY: We just checked that this contains an NSPoint // // Note: The documentation says that `pointValue`, `sizeValue` and @@ -124,8 +125,9 @@ impl NSValue { } } - pub fn get_size(&self) -> Option { - if self.contains_encoding::() { + #[cfg(feature = "Foundation_NSGeometry")] + pub fn get_size(&self) -> Option { + if self.contains_encoding::() { // SAFETY: We just checked that this contains an NSSize Some(unsafe { self.sizeValue() }) } else { @@ -133,8 +135,9 @@ impl NSValue { } } - pub fn get_rect(&self) -> Option { - if self.contains_encoding::() { + #[cfg(feature = "Foundation_NSGeometry")] + pub fn get_rect(&self) -> Option { + if self.contains_encoding::() { // SAFETY: We just checked that this contains an NSRect Some(unsafe { self.rectValue() }) } else { diff --git a/crates/icrate/src/additions/GameController/input_names.rs b/crates/icrate/src/additions/GameController/input_names.rs new file mode 100644 index 000000000..224ec4d84 --- /dev/null +++ b/crates/icrate/src/additions/GameController/input_names.rs @@ -0,0 +1,83 @@ +use crate::Foundation::NSString; + +typed_extensible_enum!( + pub type GCInputElementName = NSString; +); + +typed_extensible_enum!( + pub type GCInputButtonName = NSString; +); + +typed_extensible_enum!( + pub type GCInputAxisName = NSString; +); + +typed_extensible_enum!( + pub type GCInputSwitchName = NSString; +); + +typed_extensible_enum!( + pub type GCInputDirectionPadName = NSString; +); + +extern_static!(GCInputButtonA: &'static GCInputButtonName); + +extern_static!(GCInputButtonB: &'static GCInputButtonName); + +extern_static!(GCInputButtonX: &'static GCInputButtonName); + +extern_static!(GCInputButtonY: &'static GCInputButtonName); + +extern_static!(GCInputDirectionPad: &'static GCInputDirectionPadName); + +extern_static!(GCInputLeftThumbstick: &'static GCInputDirectionPadName); + +extern_static!(GCInputRightThumbstick: &'static GCInputDirectionPadName); + +extern_static!(GCInputLeftShoulder: &'static GCInputButtonName); + +extern_static!(GCInputRightShoulder: &'static GCInputButtonName); + +extern_static!(GCInputLeftTrigger: &'static GCInputButtonName); + +extern_static!(GCInputRightTrigger: &'static GCInputButtonName); + +extern_static!(GCInputLeftThumbstickButton: &'static GCInputButtonName); + +extern_static!(GCInputRightThumbstickButton: &'static GCInputButtonName); + +extern_static!(GCInputButtonHome: &'static GCInputButtonName); + +extern_static!(GCInputButtonMenu: &'static GCInputButtonName); + +extern_static!(GCInputButtonOptions: &'static GCInputButtonName); + +extern_static!(GCInputButtonShare: &'static GCInputButtonName); + +extern_static!(GCInputXboxPaddleOne: &'static GCInputButtonName); + +extern_static!(GCInputXboxPaddleTwo: &'static GCInputButtonName); + +extern_static!(GCInputXboxPaddleThree: &'static GCInputButtonName); + +extern_static!(GCInputXboxPaddleFour: &'static GCInputButtonName); + +extern_static!(GCInputDualShockTouchpadOne: &'static GCInputDirectionPadName); + +extern_static!(GCInputDualShockTouchpadTwo: &'static GCInputDirectionPadName); + +extern_static!(GCInputDualShockTouchpadButton: &'static GCInputButtonName); + +extern_static!(GCInputSteeringWheel: &'static GCInputAxisName); + +extern_static!(GCInputShifter: &'static GCInputElementName); + +extern_static!(GCInputPedalAccelerator: &'static GCInputButtonName); + +extern_static!(GCInputPedalBrake: &'static GCInputButtonName); + +extern_static!(GCInputPedalClutch: &'static GCInputButtonName); + +extern_static!(GCInputLeftPaddle: &'static GCInputButtonName); + +extern_static!(GCInputRightPaddle: &'static GCInputButtonName); diff --git a/crates/icrate/src/additions/GameController/mod.rs b/crates/icrate/src/additions/GameController/mod.rs index 7d5ef1b1a..bc0a1e16e 100644 --- a/crates/icrate/src/additions/GameController/mod.rs +++ b/crates/icrate/src/additions/GameController/mod.rs @@ -4,97 +4,28 @@ pub use crate::generated::GameController::*; use crate::common::*; -use crate::Foundation::NSString; + +#[cfg(all( + feature = "GameController_GCInputNames", + feature = "Foundation_NSString" +))] +mod input_names; + +#[cfg(all( + feature = "GameController_GCInputNames", + feature = "Foundation_NSString" +))] +pub use self::input_names::*; // TODO: GCKeyCode = CFIndex // NOTE: CFIndex is c_long_long on __LLP64__ / Windows 64-bit (doesn't matter for us) +#[cfg(feature = "GameController_GCKeyCodes")] pub type GCKeyCode = c_long; -typed_extensible_enum!( - pub type GCInputElementName = NSString; -); - -typed_extensible_enum!( - pub type GCInputButtonName = NSString; -); - -typed_extensible_enum!( - pub type GCInputAxisName = NSString; -); - -typed_extensible_enum!( - pub type GCInputSwitchName = NSString; -); - -typed_extensible_enum!( - pub type GCInputDirectionPadName = NSString; -); - -extern_static!(GCInputButtonA: &'static GCInputButtonName); - -extern_static!(GCInputButtonB: &'static GCInputButtonName); - -extern_static!(GCInputButtonX: &'static GCInputButtonName); - -extern_static!(GCInputButtonY: &'static GCInputButtonName); - -extern_static!(GCInputDirectionPad: &'static GCInputDirectionPadName); - -extern_static!(GCInputLeftThumbstick: &'static GCInputDirectionPadName); - -extern_static!(GCInputRightThumbstick: &'static GCInputDirectionPadName); - -extern_static!(GCInputLeftShoulder: &'static GCInputButtonName); - -extern_static!(GCInputRightShoulder: &'static GCInputButtonName); - -extern_static!(GCInputLeftTrigger: &'static GCInputButtonName); - -extern_static!(GCInputRightTrigger: &'static GCInputButtonName); - -extern_static!(GCInputLeftThumbstickButton: &'static GCInputButtonName); - -extern_static!(GCInputRightThumbstickButton: &'static GCInputButtonName); - -extern_static!(GCInputButtonHome: &'static GCInputButtonName); - -extern_static!(GCInputButtonMenu: &'static GCInputButtonName); - -extern_static!(GCInputButtonOptions: &'static GCInputButtonName); - -extern_static!(GCInputButtonShare: &'static GCInputButtonName); - -extern_static!(GCInputXboxPaddleOne: &'static GCInputButtonName); - -extern_static!(GCInputXboxPaddleTwo: &'static GCInputButtonName); - -extern_static!(GCInputXboxPaddleThree: &'static GCInputButtonName); - -extern_static!(GCInputXboxPaddleFour: &'static GCInputButtonName); - -extern_static!(GCInputDualShockTouchpadOne: &'static GCInputDirectionPadName); - -extern_static!(GCInputDualShockTouchpadTwo: &'static GCInputDirectionPadName); - -extern_static!(GCInputDualShockTouchpadButton: &'static GCInputButtonName); - -extern_static!(GCInputSteeringWheel: &'static GCInputAxisName); - -extern_static!(GCInputShifter: &'static GCInputElementName); - -extern_static!(GCInputPedalAccelerator: &'static GCInputButtonName); - -extern_static!(GCInputPedalBrake: &'static GCInputButtonName); - -extern_static!(GCInputPedalClutch: &'static GCInputButtonName); - -extern_static!(GCInputLeftPaddle: &'static GCInputButtonName); - -extern_static!(GCInputRightPaddle: &'static GCInputButtonName); - #[repr(C)] #[derive(Clone, Copy, Debug)] #[deprecated = "GCExtendedGamepadSnapshot has been deprecated, use [GCController controllerWithExtendedGamepad] instead"] +#[cfg(feature = "GameController_GCExtendedGamepadSnapshot")] pub struct GCExtendedGamepadSnapshotData { pub version: u16, pub size: u16, @@ -118,6 +49,7 @@ pub struct GCExtendedGamepadSnapshotData { } #[cfg(feature = "objc2")] #[allow(deprecated)] +#[cfg(feature = "GameController_GCExtendedGamepadSnapshot")] unsafe impl objc2::Encode for GCExtendedGamepadSnapshotData { const ENCODING: objc2::Encoding = (objc2::Encoding::Struct( "GCExtendedGamepadSnapshotData", @@ -146,6 +78,7 @@ unsafe impl objc2::Encode for GCExtendedGamepadSnapshotData { } #[cfg(feature = "objc2")] #[allow(deprecated)] +#[cfg(feature = "GameController_GCExtendedGamepadSnapshot")] unsafe impl objc2::RefEncode for GCExtendedGamepadSnapshotData { const ENCODING_REF: objc2::Encoding = objc2::Encoding::Pointer(&::ENCODING); diff --git a/crates/icrate/src/additions/InputMethodKit/mod.rs b/crates/icrate/src/additions/InputMethodKit/mod.rs index e770a7e88..f45e5024e 100644 --- a/crates/icrate/src/additions/InputMethodKit/mod.rs +++ b/crates/icrate/src/additions/InputMethodKit/mod.rs @@ -3,12 +3,35 @@ pub use crate::generated::InputMethodKit::*; -use crate::Foundation::*; +#[cfg(feature = "Foundation_NSString")] +#[allow(unused_imports)] +use crate::Foundation::NSString; -extern_static!(kIMKCommandClientName: &'static NSString); +#[cfg(all( + feature = "InputMethodKit_IMKInputController", + feature = "Foundation_NSString" +))] extern_static!(kIMKCommandMenuItemName: &'static NSString); +#[cfg(all( + feature = "InputMethodKit_IMKInputController", + feature = "Foundation_NSString" +))] +extern_static!(kIMKCommandClientName: &'static NSString); + +#[cfg(all( + feature = "InputMethodKit_IMKCandidates", + feature = "Foundation_NSString" +))] extern_static!(IMKCandidatesOpacityAttributeName: &'static NSString); +#[cfg(all( + feature = "InputMethodKit_IMKCandidates", + feature = "Foundation_NSString" +))] extern_static!(IMKCandidatesSendServerKeyEventFirst: &'static NSString); + +#[cfg(all(feature = "InputMethodKit_IMKServer", feature = "Foundation_NSString"))] +extern_static!(IMKModeDictionary: &'static NSString); +#[cfg(all(feature = "InputMethodKit_IMKServer", feature = "Foundation_NSString"))] extern_static!(IMKControllerClass: &'static NSString); +#[cfg(all(feature = "InputMethodKit_IMKServer", feature = "Foundation_NSString"))] extern_static!(IMKDelegateClass: &'static NSString); -extern_static!(IMKModeDictionary: &'static NSString); diff --git a/crates/icrate/src/additions/MapKit/mod.rs b/crates/icrate/src/additions/MapKit/mod.rs index 8e1b463de..1052c9c7b 100644 --- a/crates/icrate/src/additions/MapKit/mod.rs +++ b/crates/icrate/src/additions/MapKit/mod.rs @@ -2,5 +2,5 @@ pub use crate::generated::MapKit::*; -#[cfg(feature = "MapKit_MKMapItem")] +#[cfg(all(feature = "Foundation_NSObject", feature = "MapKit_MKMapItem"))] unsafe impl crate::Foundation::NSCoding for crate::MapKit::MKMapItem {} diff --git a/crates/icrate/src/additions/Metal/capture.rs b/crates/icrate/src/additions/Metal/capture.rs index 0a18cbdf6..67ab41cdd 100644 --- a/crates/icrate/src/additions/Metal/capture.rs +++ b/crates/icrate/src/additions/Metal/capture.rs @@ -1,23 +1,32 @@ +#![allow(unused_imports)] +use crate::common::*; +use crate::Metal::*; + // SAFETY: The documentation for captureObject specifies that the object // may be one of these three: // -#[cfg(feature = "Metal_MTLCaptureDescriptor")] -impl crate::Metal::MTLCaptureDescriptor { +impl MTLCaptureDescriptor { #[doc(alias = "setCaptureObject")] #[cfg(feature = "Metal_MTLDevice")] - pub fn set_capture_device(&self, device: &crate::Metal::MTLDevice) { - unsafe { self.setCaptureObject(Some(device)) } + pub fn set_capture_device(&self, device: &ProtocolObject) { + let device: *const _ = device; + let device: *const AnyObject = device.cast(); + unsafe { self.setCaptureObject(Some(&*device)) } } #[doc(alias = "setCaptureObject")] #[cfg(feature = "Metal_MTLCaptureScope")] - pub fn set_capture_scope(&self, scope: &crate::Metal::MTLCaptureScope) { - unsafe { self.setCaptureObject(Some(scope)) } + pub fn set_capture_scope(&self, scope: &ProtocolObject) { + let scope: *const _ = scope; + let scope: *const AnyObject = scope.cast(); + unsafe { self.setCaptureObject(Some(&*scope)) } } #[doc(alias = "setCaptureObject")] #[cfg(feature = "Metal_MTLCommandQueue")] - pub fn set_capture_command_queue(&self, command_queue: &crate::Metal::MTLCommandQueue) { - unsafe { self.setCaptureObject(Some(command_queue)) } + pub fn set_capture_command_queue(&self, command_queue: &ProtocolObject) { + let command_queue: *const _ = command_queue; + let command_queue: *const AnyObject = command_queue.cast(); + unsafe { self.setCaptureObject(Some(&*command_queue)) } } } diff --git a/crates/icrate/src/additions/Metal/device.rs b/crates/icrate/src/additions/Metal/device.rs index e1c1b9c93..39622d561 100644 --- a/crates/icrate/src/additions/Metal/device.rs +++ b/crates/icrate/src/additions/Metal/device.rs @@ -1,5 +1,7 @@ -#[cfg(feature = "Metal_MTLDevice")] -impl crate::Metal::MTLDevice { +#![cfg(commented_out)] +use crate::Metal::MTLDevice; + +pub trait MTLDeviceExtension { // pub fn system_default() -> Option { // MTLCreateSystemDefaultDevice() // } @@ -11,3 +13,5 @@ impl crate::Metal::MTLDevice { // NSArray::from(MTLCreateSystemDefaultDevice()) // } } + +impl MTLDeviceExtension for P {} diff --git a/crates/icrate/src/additions/Metal/mod.rs b/crates/icrate/src/additions/Metal/mod.rs index 0a7b2715c..c763bedf4 100644 --- a/crates/icrate/src/additions/Metal/mod.rs +++ b/crates/icrate/src/additions/Metal/mod.rs @@ -15,17 +15,34 @@ #![doc = include_str!("../../../examples/metal.rs")] //! ``` +#[cfg(feature = "Metal_MTLCaptureManager")] mod capture; +#[cfg(feature = "Metal_MTLDevice")] mod device; +#[cfg(feature = "Metal_MTLAccelerationStructureTypes")] mod packed; #[cfg(feature = "unstable-private")] mod private; -mod shift_mask; +#[cfg(feature = "Metal_MTLResource")] +mod resource; mod slice; +#[allow(unreachable_pub)] +#[allow(unused_imports)] pub use crate::generated::Metal::*; +#[cfg(feature = "Metal_MTLAccelerationStructureTypes")] pub use self::packed::{MTLPackedFloat3, __MTLPackedFloat3}; -pub use self::shift_mask::*; +#[cfg(feature = "unstable-private")] +pub use self::private::MTLDevicePrivate; +#[cfg(feature = "Metal_MTLResource")] +pub use self::resource::*; +#[cfg(all( + feature = "Metal_MTLRenderCommandEncoder", + feature = "Metal_MTLCommandEncoder" +))] +pub use self::slice::MTLRenderCommandEncoderSliceExt; -pub type CFTimeInterval = std::os::raw::c_double; +// CoreFoundation +#[allow(dead_code)] +pub(crate) type CFTimeInterval = std::os::raw::c_double; diff --git a/crates/icrate/src/additions/Metal/private.rs b/crates/icrate/src/additions/Metal/private.rs index b211b9182..5173ef2de 100644 --- a/crates/icrate/src/additions/Metal/private.rs +++ b/crates/icrate/src/additions/Metal/private.rs @@ -3,27 +3,32 @@ //! The credit for finding these belong to the [metal-rs] project. //! //! [metal-rs]: https://github.com/gfx-rs/metal-rs +#![allow(clippy::missing_safety_doc)] use crate::common::*; -use crate::Foundation; -use crate::Metal; +use crate::Foundation::*; +use crate::Metal::*; -extern_methods!( - #[cfg(feature = "Metal_MTLDevice")] - unsafe impl Metal::MTLDevice { - #[method_id(vendorName)] - #[cfg(feature = "Foundation_NSString")] - pub unsafe fn vendorName(&self) -> Id; +use objc2::msg_send_id; - #[method_id(familyName)] - #[cfg(feature = "Foundation_NSString")] - pub unsafe fn familyName(&self) -> Id; +pub unsafe trait MTLDevicePrivate: MTLDevice + Message { + #[cfg(feature = "Foundation_NSString")] + unsafe fn vendorName(&self) -> Id { + unsafe { msg_send_id![self, vendorName] } } -); + + #[cfg(feature = "Foundation_NSString")] + unsafe fn familyName(&self) -> Id { + unsafe { msg_send_id![self, familyName] } + } +} + +#[cfg(feature = "Metal_MTLDevice")] +unsafe impl MTLDevicePrivate for P {} extern_methods!( - #[cfg(feature = "Metal_MTLRenderPipelineReflection")] - unsafe impl Metal::MTLRenderPipelineReflection { + #[cfg(feature = "Metal_MTLRenderPipeline")] + unsafe impl MTLRenderPipelineReflection { #[cfg(feature = "Metal_MTLDevice")] #[method_id(initWithVertexData:fragmentData:serializedVertexDescriptor:device:options:flags:)] pub unsafe fn initWithVertexData( @@ -31,7 +36,7 @@ extern_methods!( vertex_data: *mut c_void, fragment_data: *mut c_void, vertex_desc: *mut c_void, - device: &Metal::MTLDevice, + device: &ProtocolObject, options: u64, flags: u64, ) -> Option>; @@ -41,7 +46,7 @@ extern_methods!( pub unsafe fn newSerializedVertexDataWithFlags_error( &self, flags: u64, - ) -> Result, Id>; + ) -> Result, Id>; #[method(serializeFragmentData)] pub unsafe fn serializeFragmentData(&self) -> *mut c_void; @@ -50,7 +55,7 @@ extern_methods!( extern_methods!( #[cfg(feature = "Metal_MTLSamplerDescriptor")] - unsafe impl Metal::MTLSamplerDescriptor { + unsafe impl MTLSamplerDescriptor { #[method(setLodBias:)] pub unsafe fn setLodBias(&self, bias: f32); } @@ -58,7 +63,7 @@ extern_methods!( extern_methods!( #[cfg(feature = "Metal_MTLVertexDescriptor")] - unsafe impl Metal::MTLVertexDescriptor { + unsafe impl MTLVertexDescriptor { #[method_id(newSerializedDescriptor)] pub unsafe fn newSerializedDescriptor(&self) -> Option>; } diff --git a/crates/icrate/src/additions/Metal/shift_mask.rs b/crates/icrate/src/additions/Metal/resource.rs similarity index 100% rename from crates/icrate/src/additions/Metal/shift_mask.rs rename to crates/icrate/src/additions/Metal/resource.rs diff --git a/crates/icrate/src/additions/Metal/slice.rs b/crates/icrate/src/additions/Metal/slice.rs index 79b06f180..71c9a577f 100644 --- a/crates/icrate/src/additions/Metal/slice.rs +++ b/crates/icrate/src/additions/Metal/slice.rs @@ -1,4 +1,7 @@ +#![allow(unused_imports)] +#![allow(clippy::missing_safety_doc)] use crate::common::*; +use crate::Metal::*; #[allow(dead_code)] fn slice_to_ptr_count(slice: &[T]) -> (NonNull, usize) { @@ -9,11 +12,21 @@ fn slice_to_ptr_count(slice: &[T]) -> (NonNull, usize) { (ptr, slice.len()) } -#[cfg(feature = "Metal_MTLRenderCommandEncoder")] -impl crate::Metal::MTLRenderCommandEncoder { +#[cfg(all( + feature = "Metal_MTLRenderCommandEncoder", + feature = "Metal_MTLCommandEncoder" +))] +pub trait MTLRenderCommandEncoderSliceExt: MTLRenderCommandEncoder + Message { // TODO: Safety - #[cfg(feature = "Metal_MTLViewport")] - pub unsafe fn setViewports(&self, viewports: &[crate::Metal::MTLViewport]) { + unsafe fn setViewports(&self, viewports: &[MTLViewport]); +} + +#[cfg(all( + feature = "Metal_MTLRenderCommandEncoder", + feature = "Metal_MTLCommandEncoder" +))] +impl MTLRenderCommandEncoderSliceExt for P { + unsafe fn setViewports(&self, viewports: &[MTLViewport]) { let (ptr, count) = slice_to_ptr_count(viewports); unsafe { self.setViewports_count(ptr, count) } } diff --git a/crates/icrate/src/additions/MetricKit/manager.rs b/crates/icrate/src/additions/MetricKit/manager.rs new file mode 100644 index 000000000..ccec76d28 --- /dev/null +++ b/crates/icrate/src/additions/MetricKit/manager.rs @@ -0,0 +1,35 @@ +use crate::common::*; +use crate::Foundation::*; +use crate::MetricKit::MXMetricManager; + +#[cfg(feature = "Foundation_NSString")] +pub type MXLaunchTaskID = NSString; + +// pub type os_log_t = ProtocolObject; + +// extern_protocol!( +// pub unsafe trait OS_os_log: NSObjectProtocol {} +// unsafe impl ProtocolType for dyn OS_os_log {} +// ); + +extern_methods!( + unsafe impl MXMetricManager { + #[cfg(all(feature = "Foundation_NSError", feature = "Foundation_NSString"))] + #[method(extendLaunchMeasurementForTaskID:error:_)] + pub unsafe fn extendLaunchMeasurementForTaskID_error( + &self, + task_id: &MXLaunchTaskID, + ) -> Result<(), Id>; + + #[cfg(all(feature = "Foundation_NSError", feature = "Foundation_NSString"))] + #[method(finishExtendedLaunchMeasurementForTaskID:error:_)] + pub unsafe fn finishExtendedLaunchMeasurementForTaskID_error( + &self, + task_id: &MXLaunchTaskID, + ) -> Result<(), Id>; + + // #[cfg(feature = "Foundation_NSString")] + // #[method(makeLogHandleWithCategory:)] + // pub unsafe fn makeLogHandleWithCategory(category: &NSString) -> Id; + } +); diff --git a/crates/icrate/src/additions/MetricKit/mod.rs b/crates/icrate/src/additions/MetricKit/mod.rs index 52abb0738..4637ce9bc 100644 --- a/crates/icrate/src/additions/MetricKit/mod.rs +++ b/crates/icrate/src/additions/MetricKit/mod.rs @@ -1,36 +1,9 @@ -//! # Bindings to the `MetrixKit` framework +//! # Bindings to the `MetricKit` framework #![allow(non_snake_case)] pub use crate::generated::MetricKit::*; -use crate::common::*; -use crate::Foundation::*; +#[cfg(feature = "MetricKit_MXMetricManager")] +mod manager; -pub type MXLaunchTaskID = NSString; - -// pub type os_log_t = ProtocolObject; - -// extern_protocol!( -// pub unsafe trait OS_os_log: NSObjectProtocol {} -// unsafe impl ProtocolType for dyn OS_os_log {} -// ); - -extern_methods!( - #[cfg(feature = "MetricKit_MXMetricManager")] - unsafe impl MXMetricManager { - #[method(extendLaunchMeasurementForTaskID:error:_)] - pub unsafe fn extendLaunchMeasurementForTaskID_error( - &self, - task_id: &MXLaunchTaskID, - ) -> Result<(), Id>; - - #[method(finishExtendedLaunchMeasurementForTaskID:error:_)] - pub unsafe fn finishExtendedLaunchMeasurementForTaskID_error( - &self, - task_id: &MXLaunchTaskID, - ) -> Result<(), Id>; - - // #[cfg(feature = "Foundation_NSString")] - // #[method(makeLogHandleWithCategory:)] - // pub unsafe fn makeLogHandleWithCategory(category: &NSString) -> Id; - } -); +#[cfg(feature = "MetricKit_MXMetricManager")] +pub use self::manager::*; diff --git a/crates/icrate/src/additions/QuartzCore/mod.rs b/crates/icrate/src/additions/QuartzCore/mod.rs index d524c5000..a090a4cac 100644 --- a/crates/icrate/src/additions/QuartzCore/mod.rs +++ b/crates/icrate/src/additions/QuartzCore/mod.rs @@ -6,4 +6,5 @@ pub use crate::generated::QuartzCore::*; -pub type CFTimeInterval = std::os::raw::c_double; +// CoreFoundation +pub(crate) type CFTimeInterval = std::os::raw::c_double; diff --git a/crates/icrate/src/common.rs b/crates/icrate/src/common.rs index aec822706..04bb7fcf4 100644 --- a/crates/icrate/src/common.rs +++ b/crates/icrate/src/common.rs @@ -40,3 +40,6 @@ pub(crate) type TodoFunction = *const c_void; pub(crate) type TodoClass = AnyObject; #[cfg(feature = "objc2")] pub(crate) type TodoProtocols = AnyObject; + +#[cfg(feature = "Foundation")] +pub(crate) use crate::Foundation::MainThreadMarker; diff --git a/crates/icrate/src/generated b/crates/icrate/src/generated index 594f5ad35..058738bd0 160000 --- a/crates/icrate/src/generated +++ b/crates/icrate/src/generated @@ -1 +1 @@ -Subproject commit 594f5ad351fa208a9bb93e3525f458d9ad7fa4ec +Subproject commit 058738bd0d447eb5632a2b5f07b299dc7694305d diff --git a/crates/test-assembly/crates/test_declare_class/Cargo.toml b/crates/test-assembly/crates/test_declare_class/Cargo.toml index 7e42d6c45..ddfad0fcc 100644 --- a/crates/test-assembly/crates/test_declare_class/Cargo.toml +++ b/crates/test-assembly/crates/test_declare_class/Cargo.toml @@ -12,7 +12,7 @@ objc2 = { path = "../../../objc2", default-features = false, optional = true } icrate = { path = "../../../icrate", default-features = false, optional = true } [features] -default = ["apple", "std", "Foundation"] +default = ["apple", "std", "Foundation", "Foundation_all"] std = ["icrate?/std", "icrate?/std"] # Runtime apple = ["objc2", "icrate", "icrate?/apple"] @@ -23,6 +23,7 @@ gnustep-2-0 = ["gnustep-1-9", "icrate?/gnustep-2-0"] gnustep-2-1 = ["gnustep-2-0", "icrate?/gnustep-2-1"] Foundation = ["icrate?/Foundation"] +Foundation_all = ["icrate?/Foundation_NSObject", "icrate?/Foundation_NSZone"] # Hack to prevent the feature flag from being enabled in the entire project assembly-features = ["objc2?/unstable-static-sel-inlined", "objc2?/unstable-static-class-inlined"] diff --git a/crates/test-ui/Cargo.toml b/crates/test-ui/Cargo.toml index 9b37daa79..7eef7ce4c 100644 --- a/crates/test-ui/Cargo.toml +++ b/crates/test-ui/Cargo.toml @@ -15,14 +15,14 @@ default = [ "std", "icrate/Foundation", "icrate/Foundation_NSString", - "icrate/Foundation_NSMutableString", "icrate/Foundation_NSNotification", "icrate/Foundation_NSThread", "icrate/Foundation_NSError", "icrate/Foundation_NSArray", - "icrate/Foundation_NSMutableArray", "icrate/Foundation_NSValue", "icrate/Foundation_NSSet", + "icrate/Foundation_NSObject", + "icrate/Foundation_NSURLSession", "objc2/unstable-msg-send-always-comma", ] std = ["block2/std", "objc2/std", "icrate/std"] diff --git a/crates/test-ui/ui/implement_protocol_missing_super.stderr b/crates/test-ui/ui/implement_protocol_missing_super.stderr index 14d7fba50..761aa105d 100644 --- a/crates/test-ui/ui/implement_protocol_missing_super.stderr +++ b/crates/test-ui/ui/implement_protocol_missing_super.stderr @@ -5,14 +5,14 @@ error[E0277]: the trait bound `CustomObject: NSObjectProtocol` is not satisfied | ^^^^^^^^^^^^ the trait `NSObjectProtocol` is not implemented for `CustomObject` | = help: the following other types implement trait `NSObjectProtocol`: + NSArray NSObject __NSProxy - ProtocolObject - NSArray NSMutableArray + ProtocolObject NSDictionary + NSMutableDictionary NSSet - NSEnumerator and $N others note: required by a bound in `NSURLSessionDelegate` --> $WORKSPACE/crates/icrate/src/generated/Foundation/NSURLSession.rs @@ -20,7 +20,7 @@ note: required by a bound in `NSURLSessionDelegate` | / extern_protocol!( | | pub unsafe trait NSURLSessionDelegate: NSObjectProtocol { | | -------------------- required by a bound in this trait - | | #[cfg(all(feature = "Foundation_NSError", feature = "Foundation_NSURLSession"))] + | | #[cfg(feature = "Foundation_NSError")] | | #[optional] ... | | | unsafe impl ProtocolType for dyn NSURLSessionDelegate {} diff --git a/crates/test-ui/ui/msg_send_invalid_error.stderr b/crates/test-ui/ui/msg_send_invalid_error.stderr index 79c6b7c2b..39c7f9adb 100644 --- a/crates/test-ui/ui/msg_send_invalid_error.stderr +++ b/crates/test-ui/ui/msg_send_invalid_error.stderr @@ -41,13 +41,13 @@ error[E0277]: the trait bound `i32: Message` is not satisfied | = help: the following other types implement trait `Message`: Exception + NSArray NSObject __NSProxy - ProtocolObject

- AnyObject - NSArray NSMutableArray + ProtocolObject

NSDictionary + NSMutableDictionary and $N others note: required by a bound in `send_message_error` --> $WORKSPACE/crates/objc2/src/__macro_helpers/msg_send.rs diff --git a/crates/test-ui/ui/nsarray_not_message.stderr b/crates/test-ui/ui/nsarray_not_message.stderr index 2cd2bad65..247c852c7 100644 --- a/crates/test-ui/ui/nsarray_not_message.stderr +++ b/crates/test-ui/ui/nsarray_not_message.stderr @@ -6,20 +6,19 @@ error[E0277]: the trait bound `i32: Message` is not satisfied | = help: the following other types implement trait `Message`: Exception + NSArray NSObject __NSProxy - ProtocolObject

- AnyObject - NSArray NSMutableArray + ProtocolObject

NSDictionary + NSMutableDictionary and $N others note: required by a bound in `icrate::generated::Foundation::__NSArray::>::new` --> $WORKSPACE/crates/icrate/src/generated/Foundation/NSArray.rs | | / extern_methods!( | | /// Methods declared on superclass `NSObject` - | | #[cfg(feature = "Foundation_NSArray")] | | unsafe impl NSArray { | | #[method_id(@__retain_semantics New new)] | | pub fn new() -> Id; @@ -38,9 +37,9 @@ error[E0277]: the trait bound `Id: ClassType` is not satisfied | required by a bound introduced by this call | = help: the following other types implement trait `ClassType`: + NSArray NSObject __NSProxy - NSArray NSMutableArray NSDictionary NSMutableDictionary diff --git a/crates/test-ui/ui/protocol_object_only_protocols.stderr b/crates/test-ui/ui/protocol_object_only_protocols.stderr index 4592389fa..5fc69195b 100644 --- a/crates/test-ui/ui/protocol_object_only_protocols.stderr +++ b/crates/test-ui/ui/protocol_object_only_protocols.stderr @@ -7,14 +7,14 @@ error[E0277]: the trait bound `NSObject: ImplementedBy` is not satisfi | required by a bound introduced by this call | = help: the following other types implement trait `ImplementedBy`: + (dyn NSCopying + 'static) + (dyn NSMutableCopying + 'static) (dyn NSObjectProtocol + 'static) (dyn NSObjectProtocol + Sync + 'static) (dyn NSObjectProtocol + Send + Sync + 'static) (dyn NSObjectProtocol + Send + 'static) - (dyn NSCopying + 'static) - (dyn NSMutableCopying + 'static) - (dyn NSCacheDelegate + 'static) - (dyn NSConnectionDelegate + 'static) + (dyn NSFastEnumeration + 'static) + (dyn NSCoding + 'static) and $N others note: required by a bound in `ProtocolObject::

::from_ref` --> $WORKSPACE/crates/objc2/src/runtime/protocol_object.rs @@ -34,14 +34,14 @@ error[E0277]: the trait bound `dyn Send: ImplementedBy` is not satisfi | required by a bound introduced by this call | = help: the following other types implement trait `ImplementedBy`: + (dyn NSCopying + 'static) + (dyn NSMutableCopying + 'static) (dyn NSObjectProtocol + 'static) (dyn NSObjectProtocol + Sync + 'static) (dyn NSObjectProtocol + Send + Sync + 'static) (dyn NSObjectProtocol + Send + 'static) - (dyn NSCopying + 'static) - (dyn NSMutableCopying + 'static) - (dyn NSCacheDelegate + 'static) - (dyn NSConnectionDelegate + 'static) + (dyn NSFastEnumeration + 'static) + (dyn NSCoding + 'static) and $N others note: required by a bound in `ProtocolObject::

::from_ref` --> $WORKSPACE/crates/objc2/src/runtime/protocol_object.rs @@ -61,14 +61,14 @@ error[E0277]: the trait bound `dyn Foo: ImplementedBy` is not satisfie | required by a bound introduced by this call | = help: the following other types implement trait `ImplementedBy`: + (dyn NSCopying + 'static) + (dyn NSMutableCopying + 'static) (dyn NSObjectProtocol + 'static) (dyn NSObjectProtocol + Sync + 'static) (dyn NSObjectProtocol + Send + Sync + 'static) (dyn NSObjectProtocol + Send + 'static) - (dyn NSCopying + 'static) - (dyn NSMutableCopying + 'static) - (dyn NSCacheDelegate + 'static) - (dyn NSConnectionDelegate + 'static) + (dyn NSFastEnumeration + 'static) + (dyn NSCoding + 'static) and $N others note: required by a bound in `ProtocolObject::

::from_ref` --> $WORKSPACE/crates/objc2/src/runtime/protocol_object.rs @@ -89,14 +89,14 @@ error[E0277]: `*const UnsafeCell<()>` cannot be sent between threads safely | = help: within `NSObject`, the trait `Send` is not implemented for `*const UnsafeCell<()>` = help: the following other types implement trait `ImplementedBy`: + (dyn NSCopying + 'static) + (dyn NSMutableCopying + 'static) (dyn NSObjectProtocol + 'static) (dyn NSObjectProtocol + Sync + 'static) (dyn NSObjectProtocol + Send + Sync + 'static) (dyn NSObjectProtocol + Send + 'static) - (dyn NSCopying + 'static) - (dyn NSMutableCopying + 'static) - (dyn NSCacheDelegate + 'static) - (dyn NSConnectionDelegate + 'static) + (dyn NSFastEnumeration + 'static) + (dyn NSCoding + 'static) and $N others = note: required because it appears within the type `(*const UnsafeCell<()>, PhantomPinned)` note: required because it appears within the type `PhantomData<(*const UnsafeCell<()>, PhantomPinned)>` @@ -144,14 +144,14 @@ error[E0277]: `UnsafeCell, PhantomPinned)>>` | = help: within `NSObject`, the trait `Sync` is not implemented for `UnsafeCell, PhantomPinned)>>` = help: the following other types implement trait `ImplementedBy`: + (dyn NSCopying + 'static) + (dyn NSMutableCopying + 'static) (dyn NSObjectProtocol + 'static) (dyn NSObjectProtocol + Sync + 'static) (dyn NSObjectProtocol + Send + Sync + 'static) (dyn NSObjectProtocol + Send + 'static) - (dyn NSCopying + 'static) - (dyn NSMutableCopying + 'static) - (dyn NSCacheDelegate + 'static) - (dyn NSConnectionDelegate + 'static) + (dyn NSFastEnumeration + 'static) + (dyn NSCoding + 'static) and $N others note: required because it appears within the type `objc_object` --> $WORKSPACE/crates/objc-sys/src/object.rs @@ -188,14 +188,14 @@ error[E0277]: `UnsafeCell, PhantomPinned)>>` | = help: within `NSObject`, the trait `Sync` is not implemented for `UnsafeCell, PhantomPinned)>>` = help: the following other types implement trait `ImplementedBy`: + (dyn NSCopying + 'static) + (dyn NSMutableCopying + 'static) (dyn NSObjectProtocol + 'static) (dyn NSObjectProtocol + Sync + 'static) (dyn NSObjectProtocol + Send + Sync + 'static) (dyn NSObjectProtocol + Send + 'static) - (dyn NSCopying + 'static) - (dyn NSMutableCopying + 'static) - (dyn NSCacheDelegate + 'static) - (dyn NSConnectionDelegate + 'static) + (dyn NSFastEnumeration + 'static) + (dyn NSCoding + 'static) and $N others note: required because it appears within the type `objc_object` --> $WORKSPACE/crates/objc-sys/src/object.rs @@ -232,14 +232,14 @@ error[E0277]: `*const UnsafeCell<()>` cannot be sent between threads safely | = help: within `NSObject`, the trait `Send` is not implemented for `*const UnsafeCell<()>` = help: the following other types implement trait `ImplementedBy`: + (dyn NSCopying + 'static) + (dyn NSMutableCopying + 'static) (dyn NSObjectProtocol + 'static) (dyn NSObjectProtocol + Sync + 'static) (dyn NSObjectProtocol + Send + Sync + 'static) (dyn NSObjectProtocol + Send + 'static) - (dyn NSCopying + 'static) - (dyn NSMutableCopying + 'static) - (dyn NSCacheDelegate + 'static) - (dyn NSConnectionDelegate + 'static) + (dyn NSFastEnumeration + 'static) + (dyn NSCoding + 'static) and $N others = note: required because it appears within the type `(*const UnsafeCell<()>, PhantomPinned)` note: required because it appears within the type `PhantomData<(*const UnsafeCell<()>, PhantomPinned)>` @@ -286,14 +286,14 @@ error[E0277]: the trait bound `NSObject: NSCopying` is not satisfied | required by a bound introduced by this call | = help: the following other types implement trait `NSCopying`: - ProtocolObject NSArray NSMutableArray + ProtocolObject NSDictionary + NSMutableDictionary NSSet - NSError - NSNotification - NSString + NSMutableSet + NSCountedSet and $N others = note: required for `dyn NSCopying` to implement `ImplementedBy` note: required by a bound in `ProtocolObject::

::from_ref` @@ -314,14 +314,14 @@ error[E0277]: the trait bound `dyn NSCopying + Send: ImplementedBy` is | required by a bound introduced by this call | = help: the following other types implement trait `ImplementedBy`: + (dyn NSCopying + 'static) + (dyn NSMutableCopying + 'static) (dyn NSObjectProtocol + 'static) (dyn NSObjectProtocol + Sync + 'static) (dyn NSObjectProtocol + Send + Sync + 'static) (dyn NSObjectProtocol + Send + 'static) - (dyn NSCopying + 'static) - (dyn NSMutableCopying + 'static) - (dyn NSCacheDelegate + 'static) - (dyn NSConnectionDelegate + 'static) + (dyn NSFastEnumeration + 'static) + (dyn NSCoding + 'static) and $N others note: required by a bound in `ProtocolObject::

::from_ref` --> $WORKSPACE/crates/objc2/src/runtime/protocol_object.rs diff --git a/crates/tests/Cargo.toml b/crates/tests/Cargo.toml index e88a0625d..ee41411de 100644 --- a/crates/tests/Cargo.toml +++ b/crates/tests/Cargo.toml @@ -19,15 +19,11 @@ Foundation_all = [ "icrate/Foundation", "icrate/Foundation_NSException", "icrate/Foundation_NSArray", - "icrate/Foundation_NSMutableArray", "icrate/Foundation_NSString", - "icrate/Foundation_NSMutableString", "icrate/Foundation_NSSet", - "icrate/Foundation_NSMutableSet", "icrate/Foundation_NSDictionary", - "icrate/Foundation_NSMutableDictionary", "icrate/Foundation_NSValue", - "icrate/Foundation_NSNumber", + "icrate/Foundation_NSObject", ] apple = ["block2/apple", "objc2/apple", "icrate/apple"]