objc2_home_kit/generated/
HMCharacteristicWriteAction.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10extern_class!(
11 #[unsafe(super(HMAction, NSObject))]
16 #[derive(Debug, PartialEq, Eq, Hash)]
17 #[cfg(feature = "HMAction")]
18 pub struct HMCharacteristicWriteAction<TargetValueType: ?Sized = AnyObject>;
19);
20
21#[cfg(feature = "HMAction")]
22impl<TargetValueType: ?Sized + Message + NSCopying> HMCharacteristicWriteAction<TargetValueType> {
23 #[inline]
29 pub unsafe fn cast_unchecked<NewTargetValueType: ?Sized + Message + NSCopying>(
30 &self,
31 ) -> &HMCharacteristicWriteAction<NewTargetValueType> {
32 unsafe { &*((self as *const Self).cast()) }
33 }
34}
35
36#[cfg(feature = "HMAction")]
37extern_conformance!(
38 unsafe impl<TargetValueType: ?Sized + NSCopying> NSObjectProtocol
39 for HMCharacteristicWriteAction<TargetValueType>
40 {
41 }
42);
43
44#[cfg(feature = "HMAction")]
45impl<TargetValueType: Message + NSCopying> HMCharacteristicWriteAction<TargetValueType> {
46 extern_methods!(
47 #[unsafe(method(init))]
48 #[unsafe(method_family = init)]
49 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
50
51 #[unsafe(method(new))]
52 #[unsafe(method_family = new)]
53 pub unsafe fn new() -> Retained<Self>;
54
55 #[cfg(feature = "HMCharacteristic")]
56 #[unsafe(method(initWithCharacteristic:targetValue:))]
67 #[unsafe(method_family = init)]
68 pub unsafe fn initWithCharacteristic_targetValue(
69 this: Allocated<Self>,
70 characteristic: &HMCharacteristic,
71 target_value: &TargetValueType,
72 ) -> Retained<Self>;
73
74 #[cfg(feature = "HMCharacteristic")]
75 #[unsafe(method(characteristic))]
83 #[unsafe(method_family = none)]
84 pub unsafe fn characteristic(&self) -> Retained<HMCharacteristic>;
85
86 #[unsafe(method(targetValue))]
94 #[unsafe(method_family = none)]
95 pub unsafe fn targetValue(&self) -> Retained<TargetValueType>;
96
97 #[cfg(feature = "block2")]
98 #[unsafe(method(updateTargetValue:completionHandler:))]
108 #[unsafe(method_family = none)]
109 pub unsafe fn updateTargetValue_completionHandler(
110 &self,
111 target_value: &TargetValueType,
112 completion: &block2::DynBlock<dyn Fn(*mut NSError)>,
113 );
114 );
115}