objc2_store_kit/generated/
SKProductDiscount.rs1use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9#[deprecated = "Use Product.SubscriptionOffer.PaymentMode"]
12#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct SKProductDiscountPaymentMode(pub NSUInteger);
15impl SKProductDiscountPaymentMode {
16 #[deprecated = "Use Product.SubscriptionOffer.PaymentMode"]
17 #[doc(alias = "SKProductDiscountPaymentModePayAsYouGo")]
18 pub const PayAsYouGo: Self = Self(0);
19 #[deprecated = "Use Product.SubscriptionOffer.PaymentMode"]
20 #[doc(alias = "SKProductDiscountPaymentModePayUpFront")]
21 pub const PayUpFront: Self = Self(1);
22 #[deprecated = "Use Product.SubscriptionOffer.PaymentMode"]
23 #[doc(alias = "SKProductDiscountPaymentModeFreeTrial")]
24 pub const FreeTrial: Self = Self(2);
25}
26
27unsafe impl Encode for SKProductDiscountPaymentMode {
28 const ENCODING: Encoding = NSUInteger::ENCODING;
29}
30
31unsafe impl RefEncode for SKProductDiscountPaymentMode {
32 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
33}
34
35#[deprecated = "Use Product.SubscriptionOffer.OfferType"]
38#[repr(transparent)]
39#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
40pub struct SKProductDiscountType(pub NSUInteger);
41impl SKProductDiscountType {
42 #[deprecated = "Use Product.SubscriptionOffer.OfferType"]
43 #[doc(alias = "SKProductDiscountTypeIntroductory")]
44 pub const Introductory: Self = Self(0);
45 #[deprecated = "Use Product.SubscriptionOffer.OfferType"]
46 #[doc(alias = "SKProductDiscountTypeSubscription")]
47 pub const Subscription: Self = Self(1);
48}
49
50unsafe impl Encode for SKProductDiscountType {
51 const ENCODING: Encoding = NSUInteger::ENCODING;
52}
53
54unsafe impl RefEncode for SKProductDiscountType {
55 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
56}
57
58extern_class!(
59 #[unsafe(super(NSObject))]
61 #[derive(Debug, PartialEq, Eq, Hash)]
62 #[deprecated = "Use Product.SubscriptionOffer"]
63 pub struct SKProductDiscount;
64);
65
66unsafe impl Send for SKProductDiscount {}
67
68unsafe impl Sync for SKProductDiscount {}
69
70unsafe impl NSObjectProtocol for SKProductDiscount {}
71
72impl SKProductDiscount {
73 extern_methods!(
74 #[deprecated = "Use Product.SubscriptionOffer.displayPrice"]
75 #[unsafe(method(price))]
76 #[unsafe(method_family = none)]
77 pub unsafe fn price(&self) -> Retained<NSDecimalNumber>;
78
79 #[deprecated = "Use Product.SubscriptionOffer.displayPrice"]
80 #[unsafe(method(priceLocale))]
81 #[unsafe(method_family = none)]
82 pub unsafe fn priceLocale(&self) -> Retained<NSLocale>;
83
84 #[deprecated = "Use Product.SubscriptionOffer.id"]
85 #[unsafe(method(identifier))]
86 #[unsafe(method_family = none)]
87 pub unsafe fn identifier(&self) -> Option<Retained<NSString>>;
88
89 #[cfg(feature = "SKProduct")]
90 #[deprecated = "Use Product.SubscriptionOffer.period"]
91 #[unsafe(method(subscriptionPeriod))]
92 #[unsafe(method_family = none)]
93 pub unsafe fn subscriptionPeriod(&self) -> Retained<SKProductSubscriptionPeriod>;
94
95 #[deprecated = "Use Product.SubscriptionOffer.periodCount"]
96 #[unsafe(method(numberOfPeriods))]
97 #[unsafe(method_family = none)]
98 pub unsafe fn numberOfPeriods(&self) -> NSUInteger;
99
100 #[deprecated = "Use Product.SubscriptionOffer.paymentMode"]
101 #[unsafe(method(paymentMode))]
102 #[unsafe(method_family = none)]
103 pub unsafe fn paymentMode(&self) -> SKProductDiscountPaymentMode;
104
105 #[deprecated = "Use Product.SubscriptionOffer.type"]
106 #[unsafe(method(type))]
107 #[unsafe(method_family = none)]
108 pub unsafe fn r#type(&self) -> SKProductDiscountType;
109 );
110}
111
112impl SKProductDiscount {
114 extern_methods!(
115 #[unsafe(method(init))]
116 #[unsafe(method_family = init)]
117 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
118
119 #[unsafe(method(new))]
120 #[unsafe(method_family = new)]
121 pub unsafe fn new() -> Retained<Self>;
122 );
123}