objc2_foundation/generated/
NSMeasurement.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6
7use crate::*;
8
9extern_class!(
10 #[unsafe(super(NSObject))]
12 #[derive(Debug, PartialEq, Eq, Hash)]
13 pub struct NSMeasurement<UnitType: ?Sized = AnyObject>;
14);
15
16#[cfg(feature = "NSObject")]
17unsafe impl<UnitType: ?Sized + NSCoding> NSCoding for NSMeasurement<UnitType> {}
18
19#[cfg(feature = "NSObject")]
20unsafe impl<UnitType: ?Sized> NSCopying for NSMeasurement<UnitType> {}
21
22#[cfg(feature = "NSObject")]
23unsafe impl<UnitType: ?Sized + Message> CopyingHelper for NSMeasurement<UnitType> {
24 type Result = Self;
25}
26
27unsafe impl<UnitType: ?Sized> NSObjectProtocol for NSMeasurement<UnitType> {}
28
29#[cfg(feature = "NSObject")]
30unsafe impl<UnitType: ?Sized + NSSecureCoding> NSSecureCoding for NSMeasurement<UnitType> {}
31
32impl<UnitType: Message> NSMeasurement<UnitType> {
33 extern_methods!(
34 #[unsafe(method(unit))]
35 #[unsafe(method_family = none)]
36 pub unsafe fn unit(&self) -> Retained<UnitType>;
37
38 #[unsafe(method(doubleValue))]
39 #[unsafe(method_family = none)]
40 pub unsafe fn doubleValue(&self) -> c_double;
41
42 #[unsafe(method(init))]
43 #[unsafe(method_family = init)]
44 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
45
46 #[unsafe(method(initWithDoubleValue:unit:))]
47 #[unsafe(method_family = init)]
48 pub unsafe fn initWithDoubleValue_unit(
49 this: Allocated<Self>,
50 double_value: c_double,
51 unit: &UnitType,
52 ) -> Retained<Self>;
53
54 #[cfg(feature = "NSUnit")]
55 #[unsafe(method(canBeConvertedToUnit:))]
56 #[unsafe(method_family = none)]
57 pub unsafe fn canBeConvertedToUnit(&self, unit: &NSUnit) -> bool;
58
59 #[cfg(feature = "NSUnit")]
60 #[unsafe(method(measurementByConvertingToUnit:))]
61 #[unsafe(method_family = none)]
62 pub unsafe fn measurementByConvertingToUnit(
63 &self,
64 unit: &NSUnit,
65 ) -> Retained<NSMeasurement>;
66
67 #[unsafe(method(measurementByAddingMeasurement:))]
68 #[unsafe(method_family = none)]
69 pub unsafe fn measurementByAddingMeasurement(
70 &self,
71 measurement: &NSMeasurement<UnitType>,
72 ) -> Retained<NSMeasurement<UnitType>>;
73
74 #[unsafe(method(measurementBySubtractingMeasurement:))]
75 #[unsafe(method_family = none)]
76 pub unsafe fn measurementBySubtractingMeasurement(
77 &self,
78 measurement: &NSMeasurement<UnitType>,
79 ) -> Retained<NSMeasurement<UnitType>>;
80 );
81}
82
83impl<UnitType: Message> NSMeasurement<UnitType> {
85 extern_methods!(
86 #[unsafe(method(new))]
87 #[unsafe(method_family = new)]
88 pub unsafe fn new() -> Retained<Self>;
89 );
90}