use crate::common::*;
use crate::Foundation::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct NSPortCoder;
unsafe impl ClassType for NSPortCoder {
#[inherits(NSObject)]
type Super = NSCoder;
}
);
extern_methods!(
unsafe impl NSPortCoder {
#[method(isBycopy)]
pub unsafe fn isBycopy(&self) -> bool;
#[method(isByref)]
pub unsafe fn isByref(&self) -> bool;
#[method(encodePortObject:)]
pub unsafe fn encodePortObject(&self, aport: &NSPort);
#[method_id(@__retain_semantics Other decodePortObject)]
pub unsafe fn decodePortObject(&self) -> Option<Id<NSPort, Shared>>;
#[method_id(@__retain_semantics Other connection)]
pub unsafe fn connection(&self) -> Option<Id<NSConnection, Shared>>;
#[method_id(@__retain_semantics Other portCoderWithReceivePort:sendPort:components:)]
pub unsafe fn portCoderWithReceivePort_sendPort_components(
rcvPort: Option<&NSPort>,
sndPort: Option<&NSPort>,
comps: Option<&NSArray>,
) -> Id<Object, Shared>;
#[method_id(@__retain_semantics Init initWithReceivePort:sendPort:components:)]
pub unsafe fn initWithReceivePort_sendPort_components(
this: Option<Allocated<Self>>,
rcvPort: Option<&NSPort>,
sndPort: Option<&NSPort>,
comps: Option<&NSArray>,
) -> Id<Self, Shared>;
#[method(dispatch)]
pub unsafe fn dispatch(&self);
}
);