ObjCRuntime Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
The ObjCRuntime namespace provides classes for binding Objective-C types with the Mono managed runtime.
Classes
AdoptsAttribute |
An attribute used to specify that a class adopts a specific Objective-C protocol. |
AssemblyRegistrationEventArgs | |
AvailabilityAttribute |
Describes the availability of a member or type in iOS or macOS. |
AvailabilityBaseAttribute |
Describes the availability of a member or type. |
BaseWrapper |
Base class used by the bindinge generator to generate Protocol Wrapper Types. |
BindAsAttribute |
The BindAsAttribute allows binding native NSNumber, NSValue and NSString (for enums) types into more accurate managed types. |
BindingImplAttribute |
This attribute provides information about binding code. |
BlockProxyAttribute |
This attribute is used to notify the runtime which class is used to wrap Objective-C blocks into managed delegates. |
CategoryAttribute |
Attribute used to flag a class as a category that extends the API of another type. |
Class |
Managed representation for an Objective-C class. |
Constants |
Global constants to system libraries. |
DelayedRegistrationAttribute | |
DelegateProxyAttribute |
This attribute is used to notify the runtime which class is used to wrap managed delegates into Objective-C blocks. |
DeprecatedAttribute |
Attribute indicating when an API was deprecated on a specific platform. |
DesignatedInitializerAttribute |
This attribute is used to mark managed constructors that bind Objective-C initializers marked with the NS_DESIGNATED_INITIALIZER attribute. |
Dlfcn |
Provides access to the dynamic linker |
IntroducedAttribute |
Attribute indicating when an API was first introduced on a specific platform. |
iOSAttribute |
Attribute indicating when an API was first introduced in iOS. |
LinkWithAttribute |
A LinkWith attribute specifies how the native library associated with the assembly should be linked to the resulting application. |
MacAttribute |
Attribute indicating when an API was first introduced on macOS. |
MarshalManagedExceptionEventArgs | |
MarshalObjectiveCExceptionEventArgs | |
MonoNativeFunctionWrapperAttribute |
Attribute to apply to delegates to flag them as targets that can be used with GetDelegateForFunctionPointer(IntPtr, Type). |
MonoPInvokeCallbackAttribute |
Attribute used to annotate functions that will be called back from the unmanaged world. |
NativeAttribute |
This attributes tells the Xamarin.iOS runtime that the native enum this managed enum binds is using a native size for the platform as the size for each enum value (i.e. a 32-bit value on 32-bit architectures, and a 64-bit value on 64-bit architectures). |
NoiOSAttribute |
Attribute indicating that an API is not available on iOS. |
NoMacAttribute |
Attribute indicating that an API is not available on macOS. |
NoTVAttribute |
Attribute indicating that an API is not available on tvOS. |
NoWatchAttribute |
Attribute indicating that an API is not available on watchOS. |
ObsoletedAttribute |
Attribute indicating when an API was obsoleted on a specific platform. |
PlatformHelper |
Utilities for working with the Platform enumeration. |
Protocol |
Representation of an Objective-C protocol. |
ReleaseAttribute |
This attribute indicates that the return value of a function is retained (the caller obtains a reference to the object returned). |
RequiredFrameworkAttribute | |
RequiresSuperAttribute |
This attribute is applied to methods that must call their base implementation when they're overridden. |
Runtime |
Provides information about the Xamarin.iOS Runtime. |
RuntimeException |
Class that represents an exception that occurs in the Xamarin runtime. |
Selector |
Represents an Objective-C selector in managed code. |
SelectorMarshaler | |
ThreadSafeAttribute |
A T:System.Attribute that indicates that a UIKit (for iOS) or AppKit (for macOS) method or class is thread-safe. |
TransientAttribute |
Flags a paramter in an NSObject subclass as being transient. |
TVAttribute |
Attribute indicating when an API was first introduced in tvOS. |
TypeConverter |
Converts Obj-C type encodings to managed types. |
UnavailableAttribute |
Attribute indicating when an API was removed from a specific platform. |
UserDelegateTypeAttribute |
This attribute is used on delegates created by the binding generator to properly map between signatures for Objective-C blocks and their corresponding exposed managed delegates. When binding Objective-C blocks, the binding generator will create a managed delegate whose signature is equivalent to the corresponding block's signature for the required binding code. However, this signature isn't necessarily accurate enough to re-create the block's signature at runtime (which is needed in some circumstances). This attribute makes it possible to find the type of the corresponding managed delegate that is exposed by the generated bindings, which does have enough information to re-create the corresponding block's signature. |
WatchAttribute |
Attribute indicating when an API was first introduced in watchOS. |
Structs
BlockLiteral |
Wraps a ECMA CLI delegate (C# lambdas, anonymous methods or delegates) as an Objective-C block. |
Interfaces
INativeObject |
A simple interface that is used to expose the unmanaged object pointer in various classes in Xamarin.iOS. |
Enums
Arch |
Used to represent the host on which Xamarin.iOS is running. |
ArgumentSemantic |
Represents the assignment semantics for properties. |
AvailabilityKind |
This enum is used to specify the type of availability information in an AvailabilityBaseAttribute. |
BindingImplOptions |
This enum is used by the BindingImplAttribute type to provide information about binding code. |
BlockFlags |
Flags for the BlockLiteral enum. |
Dlfcn.RTLD |
Dynamic loader resolution flags. |
DlsymOption |
Used to specify if a library requires using dlsym to resolve P/Invokes to native functions. |
LinkTarget |
Link targets available for LinkWithAttribute |
MarshalManagedExceptionMode |
This enum is used to specify what to do when an managed exception is thrown, and that exception reaches native code. |
MarshalObjectiveCExceptionMode |
This enum is used to specify what to do when an Objective-C exception is thrown, and that exception reaches managed code. |
Platform |
Enumeration values for the various iOS and macOS platforms supported by Xamarin. |
PlatformArchitecture |
This enum is used in the availability attributes to specify which architecture(s) any given attribute applies to. |
PlatformName |
This enum is used in the availability attributes to specify which platform any given attribute applies to. |
Delegates
AssemblyRegistrationHandler | |
MarshalManagedExceptionHandler | |
MarshalObjectiveCExceptionHandler |
Remarks
This namespace supports the Mono runtime extensions to integrate the Objective-C classes with the Mono managed runtime.