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::Block<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
48unsafe impl NSObjectProtocol for SLRequest {}
49
50impl SLRequest {
51 extern_methods!(
52 #[unsafe(method(requestForServiceType:requestMethod:URL:parameters:))]
53 #[unsafe(method_family = none)]
54 pub unsafe fn requestForServiceType_requestMethod_URL_parameters(
55 service_type: Option<&NSString>,
56 request_method: SLRequestMethod,
57 url: Option<&NSURL>,
58 parameters: Option<&NSDictionary>,
59 ) -> Option<Retained<SLRequest>>;
60
61 #[cfg(feature = "objc2-accounts")]
62 #[unsafe(method(account))]
63 #[unsafe(method_family = none)]
64 pub unsafe fn account(&self) -> Option<Retained<ACAccount>>;
65
66 #[cfg(feature = "objc2-accounts")]
67 #[unsafe(method(setAccount:))]
69 #[unsafe(method_family = none)]
70 pub unsafe fn setAccount(&self, account: Option<&ACAccount>);
71
72 #[unsafe(method(requestMethod))]
73 #[unsafe(method_family = none)]
74 pub unsafe fn requestMethod(&self) -> SLRequestMethod;
75
76 #[unsafe(method(URL))]
77 #[unsafe(method_family = none)]
78 pub unsafe fn URL(&self) -> Option<Retained<NSURL>>;
79
80 #[unsafe(method(parameters))]
81 #[unsafe(method_family = none)]
82 pub unsafe fn parameters(&self) -> Option<Retained<NSDictionary>>;
83
84 #[unsafe(method(addMultipartData:withName:type:filename:))]
85 #[unsafe(method_family = none)]
86 pub unsafe fn addMultipartData_withName_type_filename(
87 &self,
88 data: Option<&NSData>,
89 name: Option<&NSString>,
90 r#type: Option<&NSString>,
91 filename: Option<&NSString>,
92 );
93
94 #[unsafe(method(addMultipartData:withName:type:))]
95 #[unsafe(method_family = none)]
96 pub unsafe fn addMultipartData_withName_type(
97 &self,
98 data: Option<&NSData>,
99 name: Option<&NSString>,
100 r#type: Option<&NSString>,
101 );
102
103 #[unsafe(method(preparedURLRequest))]
104 #[unsafe(method_family = none)]
105 pub unsafe fn preparedURLRequest(&self) -> Option<Retained<NSURLRequest>>;
106
107 #[cfg(feature = "block2")]
108 #[unsafe(method(performRequestWithHandler:))]
109 #[unsafe(method_family = none)]
110 pub unsafe fn performRequestWithHandler(&self, handler: SLRequestHandler);
111 );
112}
113
114impl SLRequest {
116 extern_methods!(
117 #[unsafe(method(init))]
118 #[unsafe(method_family = init)]
119 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
120
121 #[unsafe(method(new))]
122 #[unsafe(method_family = new)]
123 pub unsafe fn new() -> Retained<Self>;
124 );
125}