icrate 0.1.2

Bindings to Apple's frameworks
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use crate::common::*;
use crate::CloudKit::*;
use crate::CoreLocation::*;
use crate::Foundation::*;

ns_enum!(
    #[underlying(NSInteger)]
    pub enum CKOperationGroupTransferSize {
        CKOperationGroupTransferSizeUnknown = 0,
        CKOperationGroupTransferSizeKilobytes = 1,
        CKOperationGroupTransferSizeMegabytes = 2,
        CKOperationGroupTransferSizeTensOfMegabytes = 3,
        CKOperationGroupTransferSizeHundredsOfMegabytes = 4,
        CKOperationGroupTransferSizeGigabytes = 5,
        CKOperationGroupTransferSizeTensOfGigabytes = 6,
        CKOperationGroupTransferSizeHundredsOfGigabytes = 7,
    }
);

extern_class!(
    #[derive(Debug, PartialEq, Eq, Hash)]
    #[cfg(feature = "CloudKit_CKOperationGroup")]
    pub struct CKOperationGroup;

    #[cfg(feature = "CloudKit_CKOperationGroup")]
    unsafe impl ClassType for CKOperationGroup {
        type Super = NSObject;
        type Mutability = InteriorMutable;
    }
);

#[cfg(feature = "CloudKit_CKOperationGroup")]
unsafe impl NSCoding for CKOperationGroup {}

#[cfg(feature = "CloudKit_CKOperationGroup")]
unsafe impl NSObjectProtocol for CKOperationGroup {}

#[cfg(feature = "CloudKit_CKOperationGroup")]
unsafe impl NSSecureCoding for CKOperationGroup {}

extern_methods!(
    #[cfg(feature = "CloudKit_CKOperationGroup")]
    unsafe impl CKOperationGroup {
        #[method_id(@__retain_semantics Init init)]
        pub unsafe fn init(this: Allocated<Self>) -> Id<Self>;

        #[cfg(feature = "Foundation_NSCoder")]
        #[method_id(@__retain_semantics Init initWithCoder:)]
        pub unsafe fn initWithCoder(this: Allocated<Self>, a_decoder: &NSCoder) -> Id<Self>;

        #[cfg(feature = "Foundation_NSString")]
        #[method_id(@__retain_semantics Other operationGroupID)]
        pub unsafe fn operationGroupID(&self) -> Id<NSString>;

        #[cfg(feature = "CloudKit_CKOperationConfiguration")]
        #[method_id(@__retain_semantics Other defaultConfiguration)]
        pub unsafe fn defaultConfiguration(&self) -> Id<CKOperationConfiguration>;

        #[cfg(feature = "CloudKit_CKOperationConfiguration")]
        #[method(setDefaultConfiguration:)]
        pub unsafe fn setDefaultConfiguration(
            &self,
            default_configuration: Option<&CKOperationConfiguration>,
        );

        #[cfg(feature = "Foundation_NSString")]
        #[method_id(@__retain_semantics Other name)]
        pub unsafe fn name(&self) -> Option<Id<NSString>>;

        #[cfg(feature = "Foundation_NSString")]
        #[method(setName:)]
        pub unsafe fn setName(&self, name: Option<&NSString>);

        #[method(quantity)]
        pub unsafe fn quantity(&self) -> NSUInteger;

        #[method(setQuantity:)]
        pub unsafe fn setQuantity(&self, quantity: NSUInteger);

        #[method(expectedSendSize)]
        pub unsafe fn expectedSendSize(&self) -> CKOperationGroupTransferSize;

        #[method(setExpectedSendSize:)]
        pub unsafe fn setExpectedSendSize(&self, expected_send_size: CKOperationGroupTransferSize);

        #[method(expectedReceiveSize)]
        pub unsafe fn expectedReceiveSize(&self) -> CKOperationGroupTransferSize;

        #[method(setExpectedReceiveSize:)]
        pub unsafe fn setExpectedReceiveSize(
            &self,
            expected_receive_size: CKOperationGroupTransferSize,
        );
    }
);

extern_methods!(
    /// Methods declared on superclass `NSObject`
    #[cfg(feature = "CloudKit_CKOperationGroup")]
    unsafe impl CKOperationGroup {
        #[method_id(@__retain_semantics New new)]
        pub unsafe fn new() -> Id<Self>;
    }
);