Source code
Revision control
Copy as Markdown
Other Tools
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use crate::*;
extern_class!(
/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsprotocolchecker?language=objc)
#[unsafe(super(NSProxy))]
#[derive(Debug, PartialEq, Eq, Hash)]
#[cfg(feature = "NSProxy")]
pub struct NSProtocolChecker;
);
#[cfg(feature = "NSProxy")]
extern_conformance!(
unsafe impl NSObjectProtocol for NSProtocolChecker {}
);
#[cfg(feature = "NSProxy")]
impl NSProtocolChecker {
extern_methods!(
#[unsafe(method(protocol))]
#[unsafe(method_family = none)]
pub fn protocol(&self) -> Retained<AnyProtocol>;
#[unsafe(method(target))]
#[unsafe(method_family = none)]
pub fn target(&self) -> Option<Retained<NSObject>>;
);
}
/// NSProtocolCheckerCreation.
#[cfg(feature = "NSProxy")]
impl NSProtocolChecker {
extern_methods!(
/// # Safety
///
/// - `an_object` should be of the correct type.
/// - `a_protocol` possibly has further requirements.
#[unsafe(method(protocolCheckerWithTarget:protocol:))]
#[unsafe(method_family = none)]
pub unsafe fn protocolCheckerWithTarget_protocol(
an_object: &NSObject,
a_protocol: &AnyProtocol,
) -> Retained<Self>;
/// # Safety
///
/// - `an_object` should be of the correct type.
/// - `a_protocol` possibly has further requirements.
#[unsafe(method(initWithTarget:protocol:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithTarget_protocol(
this: Allocated<Self>,
an_object: &NSObject,
a_protocol: &AnyProtocol,
) -> Retained<Self>;
);
}