net9.0-ios17.2
namespace Foundation
{
    [Protocol(Name = "NSObject", WrapperType = typeof(NSObjectProtocolWrapper))]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "DangerousRelease", Selector = "release")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetNativeHash", ReturnType = typeof(UIntPtr), Selector = "hash")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "DangerousRetain", ReturnType = typeof(NSObject), Selector = "retain")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "DangerousAutorelease", ReturnType = typeof(NSObject), Selector = "autorelease")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "IsEqual", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(NSObject) }, ReturnType = typeof(bool), Selector = "isEqual:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "PerformSelector", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(Selector) }, ReturnType = typeof(NSObject), Selector = "performSelector:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "PerformSelector", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(Selector), typeof(NSObject) }, ReturnType = typeof(NSObject), Selector = "performSelector:withObject:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "PerformSelector", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(Selector), typeof(NSObject), typeof(NSObject) }, ReturnType = typeof(NSObject), Selector = "performSelector:withObject:withObject:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "IsKindOfClass", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(Class) }, ReturnType = typeof(bool), Selector = "isKindOfClass:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "IsMemberOfClass", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(Class) }, ReturnType = typeof(bool), Selector = "isMemberOfClass:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "ConformsToProtocol", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(NativeHandle) }, ReturnType = typeof(bool), Selector = "conformsToProtocol:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "RespondsToSelector", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(Selector) }, ReturnType = typeof(bool), Selector = "respondsToSelector:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "description", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Description", PropertyType = typeof(string), Selector = "description")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "debugDescription", IsProperty = true, IsRequired = false, IsStatic = false, Name = "DebugDescription", PropertyType = typeof(string), Selector = "debugDescription")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "superclass", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Superclass", PropertyType = typeof(Class), Selector = "superclass")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "class", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Class", PropertyType = typeof(Class), Selector = "class")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "self", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Self", PropertyType = typeof(NSObject), Selector = "self")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "isProxy", IsProperty = true, IsRequired = true, IsStatic = false, Name = "IsProxy", PropertyType = typeof(bool), Selector = "isProxy")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "retainCount", IsProperty = true, IsRequired = true, IsStatic = false, Name = "RetainCount", PropertyType = typeof(UIntPtr), Selector = "retainCount")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "zone", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Zone", PropertyType = typeof(NSZone), Selector = "zone")]
    public interface INSObjectProtocol : INativeObject, IDisposable
    {
        [BindingImpl(BindingImplOptions.GeneratedCode | BindingImplOptions.Optimizable)]
        [Export("performSelector:withObject:")]
        [Preserve(Conditional = true)]
        NSObject! PerformSelector(Selector! aSelector, NSObject? anObject);
    }
}
.NET 6.07.08.09.0
Information specific to net9.0
Platforms This API is only available when you target a specific platform:
iOS 10.010.110.210.311.011.111.211.311.412.012.112.212.312.413.013.113.213.313.413.513.614.014.114.214.314.414.515.015.215.416.016.116.216.417.017.2
Mac Catalyst 13.113.213.313.413.514.214.314.414.515.015.215.416.116.216.417.017.2
macOS 10.1410.1510.1611.011.111.211.312.012.112.313.013.113.314.014.2
tvOS 10.010.110.211.011.111.211.311.412.012.112.212.312.413.013.213.313.414.014.214.314.414.515.015.215.416.016.116.417.017.2
Information specific to net9.0-ios17.2
Assembly

Microsoft.iOS , Version=17.2.0.0, PublicKeyToken=84e04ff9cfb79065

Referencing

The API is automatically referenced.

Platform Restrictions

This API is only supported on the following platforms:

  • iOS >= 12.2
  • Mac Catalyst >= 12.2
  • Mac Catalyst >= 13.1
  • macOS >= 10.15
  • tvOS >= 12.2
  • watchOS
  • Built-in API
  • Package-provided API

11/13/2024
An error has occurred. This application may no longer respond until reloaded. Reload 🗙