objc2_core_graphics/generated/
CGError.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4#[cfg(feature = "objc2")]
5use objc2::__framework_prelude::*;
6
7use crate::*;
8
9/// [Apple's documentation](https://developer.apple.com/documentation/coregraphics/cgerror?language=objc)
10// NS_ENUM
11#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct CGError(pub i32);
14impl CGError {
15    #[doc(alias = "kCGErrorSuccess")]
16    pub const Success: Self = Self(0);
17    #[doc(alias = "kCGErrorFailure")]
18    pub const Failure: Self = Self(1000);
19    #[doc(alias = "kCGErrorIllegalArgument")]
20    pub const IllegalArgument: Self = Self(1001);
21    #[doc(alias = "kCGErrorInvalidConnection")]
22    pub const InvalidConnection: Self = Self(1002);
23    #[doc(alias = "kCGErrorInvalidContext")]
24    pub const InvalidContext: Self = Self(1003);
25    #[doc(alias = "kCGErrorCannotComplete")]
26    pub const CannotComplete: Self = Self(1004);
27    #[doc(alias = "kCGErrorNotImplemented")]
28    pub const NotImplemented: Self = Self(1006);
29    #[doc(alias = "kCGErrorRangeCheck")]
30    pub const RangeCheck: Self = Self(1007);
31    #[doc(alias = "kCGErrorTypeCheck")]
32    pub const TypeCheck: Self = Self(1008);
33    #[doc(alias = "kCGErrorInvalidOperation")]
34    pub const InvalidOperation: Self = Self(1010);
35    #[doc(alias = "kCGErrorNoneAvailable")]
36    pub const NoneAvailable: Self = Self(1011);
37}
38
39#[cfg(feature = "objc2")]
40unsafe impl Encode for CGError {
41    const ENCODING: Encoding = i32::ENCODING;
42}
43
44#[cfg(feature = "objc2")]
45unsafe impl RefEncode for CGError {
46    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
47}
48
49/// [Apple's documentation](https://developer.apple.com/documentation/coregraphics/cgerrorcallback?language=objc)
50pub type CGErrorCallback = Option<unsafe extern "C-unwind" fn()>;
51
52impl CGError {
53    /// # Safety
54    ///
55    /// `callback` must be implemented correctly.
56    #[doc(alias = "CGErrorSetCallback")]
57    #[inline]
58    pub unsafe fn set_callback(callback: CGErrorCallback) {
59        extern "C-unwind" {
60            fn CGErrorSetCallback(callback: CGErrorCallback);
61        }
62        unsafe { CGErrorSetCallback(callback) }
63    }
64}
65
66extern "C-unwind" {
67    #[deprecated = "renamed to `CGError::set_callback`"]
68    pub fn CGErrorSetCallback(callback: CGErrorCallback);
69}