#![cfg(feature = "Foundation_NSUUID")]
use objc2::encode::{Encode, Encoding, RefEncode};
use crate::common::*;
use crate::Foundation;
#[repr(transparent)]
pub(crate) struct UuidBytes(pub(crate) [u8; 16]);
unsafe impl RefEncode for UuidBytes {
#[cfg(target_arch = "aarch64")]
const ENCODING_REF: Encoding = Encoding::String;
#[cfg(not(target_arch = "aarch64"))]
const ENCODING_REF: Encoding = Encoding::Array(16, &u8::ENCODING);
}
extern_methods!(
unsafe impl Foundation::NSUUID {
#[method_id(initWithUUIDBytes:)]
pub(crate) fn initWithUUIDBytes(this: Allocated<Self>, bytes: &UuidBytes) -> Id<Self>;
#[method(getUUIDBytes:)]
pub(crate) fn getUUIDBytes(&self, bytes: &mut UuidBytes);
}
);