icrate 0.0.1

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::Foundation::*;

typed_extensible_enum!(
    pub type NSValueTransformerName = NSString;
);

extern_static!(NSNegateBooleanTransformerName: &'static NSValueTransformerName);

extern_static!(NSIsNilTransformerName: &'static NSValueTransformerName);

extern_static!(NSIsNotNilTransformerName: &'static NSValueTransformerName);

extern_static!(NSUnarchiveFromDataTransformerName: &'static NSValueTransformerName);

extern_static!(NSKeyedUnarchiveFromDataTransformerName: &'static NSValueTransformerName);

extern_static!(NSSecureUnarchiveFromDataTransformerName: &'static NSValueTransformerName);

extern_class!(
    #[derive(Debug, PartialEq, Eq, Hash)]
    pub struct NSValueTransformer;

    unsafe impl ClassType for NSValueTransformer {
        type Super = NSObject;
    }
);

extern_methods!(
    unsafe impl NSValueTransformer {
        #[method(setValueTransformer:forName:)]
        pub unsafe fn setValueTransformer_forName(
            transformer: Option<&NSValueTransformer>,
            name: &NSValueTransformerName,
        );

        #[method_id(@__retain_semantics Other valueTransformerForName:)]
        pub unsafe fn valueTransformerForName(
            name: &NSValueTransformerName,
        ) -> Option<Id<NSValueTransformer, Shared>>;

        #[method_id(@__retain_semantics Other valueTransformerNames)]
        pub unsafe fn valueTransformerNames() -> Id<NSArray<NSValueTransformerName>, Shared>;

        #[method(transformedValueClass)]
        pub unsafe fn transformedValueClass() -> &'static Class;

        #[method(allowsReverseTransformation)]
        pub unsafe fn allowsReverseTransformation() -> bool;

        #[method_id(@__retain_semantics Other transformedValue:)]
        pub unsafe fn transformedValue(&self, value: Option<&Object>)
            -> Option<Id<Object, Shared>>;

        #[method_id(@__retain_semantics Other reverseTransformedValue:)]
        pub unsafe fn reverseTransformedValue(
            &self,
            value: Option<&Object>,
        ) -> Option<Id<Object, Shared>>;
    }
);

extern_class!(
    #[derive(Debug, PartialEq, Eq, Hash)]
    pub struct NSSecureUnarchiveFromDataTransformer;

    unsafe impl ClassType for NSSecureUnarchiveFromDataTransformer {
        #[inherits(NSObject)]
        type Super = NSValueTransformer;
    }
);

extern_methods!(
    unsafe impl NSSecureUnarchiveFromDataTransformer {
        #[method_id(@__retain_semantics Other allowedTopLevelClasses)]
        pub unsafe fn allowedTopLevelClasses() -> Id<NSArray<TodoClass>, Shared>;
    }
);