objc2_social/generated/
SLRequest.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-accounts")]
7use objc2_accounts::*;
8use objc2_foundation::*;
9
10use crate::*;
11
12#[repr(transparent)]
15#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
16pub struct SLRequestMethod(pub NSInteger);
17impl SLRequestMethod {
18 #[doc(alias = "SLRequestMethodGET")]
19 pub const GET: Self = Self(0);
20 #[doc(alias = "SLRequestMethodPOST")]
21 pub const POST: Self = Self(1);
22 #[doc(alias = "SLRequestMethodDELETE")]
23 pub const DELETE: Self = Self(2);
24 #[doc(alias = "SLRequestMethodPUT")]
25 pub const PUT: Self = Self(3);
26}
27
28unsafe impl Encode for SLRequestMethod {
29 const ENCODING: Encoding = NSInteger::ENCODING;
30}
31
32unsafe impl RefEncode for SLRequestMethod {
33 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
34}
35
36#[cfg(feature = "block2")]
38pub type SLRequestHandler =
39 *mut block2::DynBlock<dyn Fn(*mut NSData, *mut NSHTTPURLResponse, *mut NSError)>;
40
41extern_class!(
42 #[unsafe(super(NSObject))]
44 #[derive(Debug, PartialEq, Eq, Hash)]
45 pub struct SLRequest;
46);
47
48extern_conformance!(
49 unsafe impl NSObjectProtocol for SLRequest {}
50);
51
52impl SLRequest {
53 extern_methods!(
54 #[unsafe(method(requestForServiceType:requestMethod:URL:parameters:))]
55 #[unsafe(method_family = none)]
56 pub unsafe fn requestForServiceType_requestMethod_URL_parameters(
57 service_type: Option<&NSString>,
58 request_method: SLRequestMethod,
59 url: Option<&NSURL>,
60 parameters: Option<&NSDictionary>,
61 ) -> Option<Retained<SLRequest>>;
62
63 #[cfg(feature = "objc2-accounts")]
64 #[unsafe(method(account))]
65 #[unsafe(method_family = none)]
66 pub unsafe fn account(&self) -> Option<Retained<ACAccount>>;
67
68 #[cfg(feature = "objc2-accounts")]
69 #[unsafe(method(setAccount:))]
71 #[unsafe(method_family = none)]
72 pub unsafe fn setAccount(&self, account: Option<&ACAccount>);
73
74 #[unsafe(method(requestMethod))]
75 #[unsafe(method_family = none)]
76 pub unsafe fn requestMethod(&self) -> SLRequestMethod;
77
78 #[unsafe(method(URL))]
79 #[unsafe(method_family = none)]
80 pub unsafe fn URL(&self) -> Option<Retained<NSURL>>;
81
82 #[unsafe(method(parameters))]
83 #[unsafe(method_family = none)]
84 pub unsafe fn parameters(&self) -> Option<Retained<NSDictionary>>;
85
86 #[unsafe(method(addMultipartData:withName:type:filename:))]
87 #[unsafe(method_family = none)]
88 pub unsafe fn addMultipartData_withName_type_filename(
89 &self,
90 data: Option<&NSData>,
91 name: Option<&NSString>,
92 r#type: Option<&NSString>,
93 filename: Option<&NSString>,
94 );
95
96 #[unsafe(method(addMultipartData:withName:type:))]
97 #[unsafe(method_family = none)]
98 pub unsafe fn addMultipartData_withName_type(
99 &self,
100 data: Option<&NSData>,
101 name: Option<&NSString>,
102 r#type: Option<&NSString>,
103 );
104
105 #[unsafe(method(preparedURLRequest))]
106 #[unsafe(method_family = none)]
107 pub unsafe fn preparedURLRequest(&self) -> Option<Retained<NSURLRequest>>;
108
109 #[cfg(feature = "block2")]
110 #[unsafe(method(performRequestWithHandler:))]
111 #[unsafe(method_family = none)]
112 pub unsafe fn performRequestWithHandler(&self, handler: SLRequestHandler);
113 );
114}
115
116impl SLRequest {
118 extern_methods!(
119 #[unsafe(method(init))]
120 #[unsafe(method_family = init)]
121 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
122
123 #[unsafe(method(new))]
124 #[unsafe(method_family = new)]
125 pub unsafe fn new() -> Retained<Self>;
126 );
127}