#![allow(non_camel_case_types)]
#[cfg(any(doc, target_vendor = "apple"))]
use core::ffi::c_int;
use crate::runtime::{AnyClass, AnyObject};
pub const nil: *mut AnyObject = 0 as *mut _;
pub const Nil: *mut AnyClass = 0 as *mut _;
pub type objc_AssociationPolicy = usize;
pub const OBJC_ASSOCIATION_ASSIGN: objc_AssociationPolicy = 0;
pub const OBJC_ASSOCIATION_RETAIN_NONATOMIC: objc_AssociationPolicy = 1;
pub const OBJC_ASSOCIATION_COPY_NONATOMIC: objc_AssociationPolicy = 3;
pub const OBJC_ASSOCIATION_RETAIN: objc_AssociationPolicy = 0o1401;
pub const OBJC_ASSOCIATION_COPY: objc_AssociationPolicy = 0o1403;
#[cfg(any(doc, target_vendor = "apple"))]
pub const OBJC_SYNC_SUCCESS: c_int = 0;
#[cfg(any(doc, target_vendor = "apple"))]
pub const OBJC_SYNC_NOT_OWNING_THREAD_ERROR: c_int = -1;
#[cfg(any(doc, target_vendor = "apple"))]
pub const OBJC_SYNC_TIMED_OUT: c_int = -2;
#[cfg(any(doc, target_vendor = "apple"))]
pub const OBJC_SYNC_NOT_INITIALIZED: c_int = -3;
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_association_policy() {
assert_eq!(OBJC_ASSOCIATION_RETAIN, 769);
assert_eq!(OBJC_ASSOCIATION_COPY, 771);
assert_eq!(OBJC_ASSOCIATION_RETAIN, 0x301);
assert_eq!(OBJC_ASSOCIATION_COPY, 0x303);
}
}