Protocols.html 45 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>Protocols Reference</title>
  5. <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
  6. <link rel="stylesheet" type="text/css" href="css/highlight.css" />
  7. <meta charset="utf-8">
  8. <script src="js/jquery.min.js" defer></script>
  9. <script src="js/jazzy.js" defer></script>
  10. <script src="js/lunr.min.js" defer></script>
  11. <script src="js/typeahead.jquery.js" defer></script>
  12. <script src="js/jazzy.search.js" defer></script>
  13. </head>
  14. <body>
  15. <a name="//apple_ref/swift/Section/Protocols" class="dashAnchor"></a>
  16. <a title="Protocols Reference"></a>
  17. <header class="header">
  18. <p class="header-col header-col--primary">
  19. <a class="header-link" href="index.html">
  20. Alamofire Docs
  21. </a>
  22. (77% documented)
  23. </p>
  24. <p class="header-col--secondary">
  25. <form role="search" action="search.json">
  26. <input type="text" placeholder="Search documentation" data-typeahead>
  27. </form>
  28. </p>
  29. <p class="header-col header-col--secondary">
  30. <a class="header-link" href="https://github.com/Alamofire/Alamofire">
  31. <img class="header-icon" src="img/gh.png"/>
  32. View on GitHub
  33. </a>
  34. </p>
  35. <p class="header-col header-col--secondary">
  36. <a class="header-link" href="dash-feed://https%3A%2F%2Falamofire%2Egithub%2Eio%2FAlamofire%2Fdocsets%2FAlamofire%2Exml">
  37. <img class="header-icon" src="img/dash.png"/>
  38. Install in Dash
  39. </a>
  40. </p>
  41. </header>
  42. <p class="breadcrumbs">
  43. <a class="breadcrumb" href="index.html">Alamofire Reference</a>
  44. <img class="carat" src="img/carat.png" />
  45. Protocols Reference
  46. </p>
  47. <div class="content-wrapper">
  48. <nav class="navigation">
  49. <ul class="nav-groups">
  50. <li class="nav-group-name">
  51. <a class="nav-group-name-link" href="Classes.html">Classes</a>
  52. <ul class="nav-group-tasks">
  53. <li class="nav-group-task">
  54. <a class="nav-group-task-link" href="Classes/AlamofireNotifications.html">AlamofireNotifications</a>
  55. </li>
  56. <li class="nav-group-task">
  57. <a class="nav-group-task-link" href="Classes/ClosureEventMonitor.html">ClosureEventMonitor</a>
  58. </li>
  59. <li class="nav-group-task">
  60. <a class="nav-group-task-link" href="Classes/CompositeEventMonitor.html">CompositeEventMonitor</a>
  61. </li>
  62. <li class="nav-group-task">
  63. <a class="nav-group-task-link" href="Classes/CompositeTrustEvaluator.html">CompositeTrustEvaluator</a>
  64. </li>
  65. <li class="nav-group-task">
  66. <a class="nav-group-task-link" href="Classes/DataRequest.html">DataRequest</a>
  67. </li>
  68. <li class="nav-group-task">
  69. <a class="nav-group-task-link" href="Classes/DataResponseSerializer.html">DataResponseSerializer</a>
  70. </li>
  71. <li class="nav-group-task">
  72. <a class="nav-group-task-link" href="Classes/DecodableResponseSerializer.html">DecodableResponseSerializer</a>
  73. </li>
  74. <li class="nav-group-task">
  75. <a class="nav-group-task-link" href="Classes/DefaultTrustEvaluator.html">DefaultTrustEvaluator</a>
  76. </li>
  77. <li class="nav-group-task">
  78. <a class="nav-group-task-link" href="Classes/DisabledEvaluator.html">DisabledEvaluator</a>
  79. </li>
  80. <li class="nav-group-task">
  81. <a class="nav-group-task-link" href="Classes/DownloadRequest.html">DownloadRequest</a>
  82. </li>
  83. <li class="nav-group-task">
  84. <a class="nav-group-task-link" href="Classes/DownloadRequest/Options.html">– Options</a>
  85. </li>
  86. <li class="nav-group-task">
  87. <a class="nav-group-task-link" href="Classes/DownloadRequest/Downloadable.html">– Downloadable</a>
  88. </li>
  89. <li class="nav-group-task">
  90. <a class="nav-group-task-link" href="Classes/JSONParameterEncoder.html">JSONParameterEncoder</a>
  91. </li>
  92. <li class="nav-group-task">
  93. <a class="nav-group-task-link" href="Classes/JSONResponseSerializer.html">JSONResponseSerializer</a>
  94. </li>
  95. <li class="nav-group-task">
  96. <a class="nav-group-task-link" href="Classes/MultipartFormData.html">MultipartFormData</a>
  97. </li>
  98. <li class="nav-group-task">
  99. <a class="nav-group-task-link" href="Classes/MultipartUpload.html">MultipartUpload</a>
  100. </li>
  101. <li class="nav-group-task">
  102. <a class="nav-group-task-link" href="Classes/NetworkReachabilityManager.html">NetworkReachabilityManager</a>
  103. </li>
  104. <li class="nav-group-task">
  105. <a class="nav-group-task-link" href="Classes/NetworkReachabilityManager/NetworkReachabilityStatus.html">– NetworkReachabilityStatus</a>
  106. </li>
  107. <li class="nav-group-task">
  108. <a class="nav-group-task-link" href="Classes/NetworkReachabilityManager/ConnectionType.html">– ConnectionType</a>
  109. </li>
  110. <li class="nav-group-task">
  111. <a class="nav-group-task-link" href="Classes/PinnedCertificatesTrustEvaluator.html">PinnedCertificatesTrustEvaluator</a>
  112. </li>
  113. <li class="nav-group-task">
  114. <a class="nav-group-task-link" href="Classes/PublicKeysTrustEvaluator.html">PublicKeysTrustEvaluator</a>
  115. </li>
  116. <li class="nav-group-task">
  117. <a class="nav-group-task-link" href="Classes/Request.html">Request</a>
  118. </li>
  119. <li class="nav-group-task">
  120. <a class="nav-group-task-link" href="Classes/Request/State.html">– State</a>
  121. </li>
  122. <li class="nav-group-task">
  123. <a class="nav-group-task-link" href="Classes/RevocationTrustEvaluator.html">RevocationTrustEvaluator</a>
  124. </li>
  125. <li class="nav-group-task">
  126. <a class="nav-group-task-link" href="Classes/RevocationTrustEvaluator/Options.html">– Options</a>
  127. </li>
  128. <li class="nav-group-task">
  129. <a class="nav-group-task-link" href="Classes/ServerTrustManager.html">ServerTrustManager</a>
  130. </li>
  131. <li class="nav-group-task">
  132. <a class="nav-group-task-link" href="Classes/Session.html">Session</a>
  133. </li>
  134. <li class="nav-group-task">
  135. <a class="nav-group-task-link" href="Classes/SessionDelegate.html">SessionDelegate</a>
  136. </li>
  137. <li class="nav-group-task">
  138. <a class="nav-group-task-link" href="Classes/StringResponseSerializer.html">StringResponseSerializer</a>
  139. </li>
  140. <li class="nav-group-task">
  141. <a class="nav-group-task-link" href="Classes/URLEncodedFormEncoder.html">URLEncodedFormEncoder</a>
  142. </li>
  143. <li class="nav-group-task">
  144. <a class="nav-group-task-link" href="Classes/URLEncodedFormEncoder/BoolEncoding.html">– BoolEncoding</a>
  145. </li>
  146. <li class="nav-group-task">
  147. <a class="nav-group-task-link" href="Classes/URLEncodedFormEncoder/ArrayEncoding.html">– ArrayEncoding</a>
  148. </li>
  149. <li class="nav-group-task">
  150. <a class="nav-group-task-link" href="Classes/URLEncodedFormEncoder/SpaceEncoding.html">– SpaceEncoding</a>
  151. </li>
  152. <li class="nav-group-task">
  153. <a class="nav-group-task-link" href="Classes/URLEncodedFormEncoder/Error.html">– Error</a>
  154. </li>
  155. <li class="nav-group-task">
  156. <a class="nav-group-task-link" href="Classes/URLEncodedFormParameterEncoder.html">URLEncodedFormParameterEncoder</a>
  157. </li>
  158. <li class="nav-group-task">
  159. <a class="nav-group-task-link" href="Classes/URLEncodedFormParameterEncoder/Destination.html">– Destination</a>
  160. </li>
  161. <li class="nav-group-task">
  162. <a class="nav-group-task-link" href="Classes/UploadRequest.html">UploadRequest</a>
  163. </li>
  164. <li class="nav-group-task">
  165. <a class="nav-group-task-link" href="Classes/UploadRequest/Uploadable.html">– Uploadable</a>
  166. </li>
  167. </ul>
  168. </li>
  169. <li class="nav-group-name">
  170. <a class="nav-group-name-link" href="Enums.html">Enumerations</a>
  171. <ul class="nav-group-tasks">
  172. <li class="nav-group-task">
  173. <a class="nav-group-task-link" href="Enums/AF.html">AF</a>
  174. </li>
  175. <li class="nav-group-task">
  176. <a class="nav-group-task-link" href="Enums/AFError.html">AFError</a>
  177. </li>
  178. <li class="nav-group-task">
  179. <a class="nav-group-task-link" href="Enums/AFError/ParameterEncodingFailureReason.html">– ParameterEncodingFailureReason</a>
  180. </li>
  181. <li class="nav-group-task">
  182. <a class="nav-group-task-link" href="Enums/AFError/ParameterEncoderFailureReason.html">– ParameterEncoderFailureReason</a>
  183. </li>
  184. <li class="nav-group-task">
  185. <a class="nav-group-task-link" href="Enums/AFError/MultipartEncodingFailureReason.html">– MultipartEncodingFailureReason</a>
  186. </li>
  187. <li class="nav-group-task">
  188. <a class="nav-group-task-link" href="Enums/AFError/ResponseValidationFailureReason.html">– ResponseValidationFailureReason</a>
  189. </li>
  190. <li class="nav-group-task">
  191. <a class="nav-group-task-link" href="Enums/AFError/ResponseSerializationFailureReason.html">– ResponseSerializationFailureReason</a>
  192. </li>
  193. <li class="nav-group-task">
  194. <a class="nav-group-task-link" href="Enums/AFError/ServerTrustFailureReason.html">– ServerTrustFailureReason</a>
  195. </li>
  196. <li class="nav-group-task">
  197. <a class="nav-group-task-link" href="Enums/HTTPMethod.html">HTTPMethod</a>
  198. </li>
  199. <li class="nav-group-task">
  200. <a class="nav-group-task-link" href="Enums/Result.html">Result</a>
  201. </li>
  202. </ul>
  203. </li>
  204. <li class="nav-group-name">
  205. <a class="nav-group-name-link" href="Extensions.html">Extensions</a>
  206. <ul class="nav-group-tasks">
  207. <li class="nav-group-task">
  208. <a class="nav-group-task-link" href="Extensions/Array.html">Array</a>
  209. </li>
  210. <li class="nav-group-task">
  211. <a class="nav-group-task-link" href="Extensions/Bundle.html">Bundle</a>
  212. </li>
  213. <li class="nav-group-task">
  214. <a class="nav-group-task-link" href="Extensions/CharacterSet.html">CharacterSet</a>
  215. </li>
  216. <li class="nav-group-task">
  217. <a class="nav-group-task-link" href="Extensions/Error.html">Error</a>
  218. </li>
  219. <li class="nav-group-task">
  220. <a class="nav-group-task-link" href="Extensions/HTTPURLResponse.html">HTTPURLResponse</a>
  221. </li>
  222. <li class="nav-group-task">
  223. <a class="nav-group-task-link" href="Extensions/Notification.html">Notification</a>
  224. </li>
  225. <li class="nav-group-task">
  226. <a class="nav-group-task-link" href="Extensions/SecTrust.html">SecTrust</a>
  227. </li>
  228. <li class="nav-group-task">
  229. <a class="nav-group-task-link" href="Extensions/String.html">String</a>
  230. </li>
  231. <li class="nav-group-task">
  232. <a class="nav-group-task-link" href="Extensions/URL.html">URL</a>
  233. </li>
  234. <li class="nav-group-task">
  235. <a class="nav-group-task-link" href="Extensions/URLComponents.html">URLComponents</a>
  236. </li>
  237. <li class="nav-group-task">
  238. <a class="nav-group-task-link" href="Extensions/URLRequest.html">URLRequest</a>
  239. </li>
  240. <li class="nav-group-task">
  241. <a class="nav-group-task-link" href="Extensions/URLSessionConfiguration.html">URLSessionConfiguration</a>
  242. </li>
  243. </ul>
  244. </li>
  245. <li class="nav-group-name">
  246. <a class="nav-group-name-link" href="Functions.html">Functions</a>
  247. <ul class="nav-group-tasks">
  248. <li class="nav-group-task">
  249. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire2eeoiySbAA26NetworkReachabilityManagerC0cD6StatusO_AFtF">==(_:_:)</a>
  250. </li>
  251. </ul>
  252. </li>
  253. <li class="nav-group-name">
  254. <a class="nav-group-name-link" href="Protocols.html">Protocols</a>
  255. <ul class="nav-group-tasks">
  256. <li class="nav-group-task">
  257. <a class="nav-group-task-link" href="Protocols/DataDecoder.html">DataDecoder</a>
  258. </li>
  259. <li class="nav-group-task">
  260. <a class="nav-group-task-link" href="Protocols/DataResponseSerializerProtocol.html">DataResponseSerializerProtocol</a>
  261. </li>
  262. <li class="nav-group-task">
  263. <a class="nav-group-task-link" href="Protocols/DownloadResponseSerializerProtocol.html">DownloadResponseSerializerProtocol</a>
  264. </li>
  265. <li class="nav-group-task">
  266. <a class="nav-group-task-link" href="Protocols/EventMonitor.html">EventMonitor</a>
  267. </li>
  268. <li class="nav-group-task">
  269. <a class="nav-group-task-link" href="Protocols/ParameterEncoder.html">ParameterEncoder</a>
  270. </li>
  271. <li class="nav-group-task">
  272. <a class="nav-group-task-link" href="Protocols/ParameterEncoding.html">ParameterEncoding</a>
  273. </li>
  274. <li class="nav-group-task">
  275. <a class="nav-group-task-link" href="Protocols/RequestAdapter.html">RequestAdapter</a>
  276. </li>
  277. <li class="nav-group-task">
  278. <a class="nav-group-task-link" href="Protocols/RequestDelegate.html">RequestDelegate</a>
  279. </li>
  280. <li class="nav-group-task">
  281. <a class="nav-group-task-link" href="Protocols/RequestRetrier.html">RequestRetrier</a>
  282. </li>
  283. <li class="nav-group-task">
  284. <a class="nav-group-task-link" href="Protocols/ResponseSerializer.html">ResponseSerializer</a>
  285. </li>
  286. <li class="nav-group-task">
  287. <a class="nav-group-task-link" href="Protocols/ServerTrustEvaluating.html">ServerTrustEvaluating</a>
  288. </li>
  289. <li class="nav-group-task">
  290. <a class="nav-group-task-link" href="Protocols/SessionStateProvider.html">SessionStateProvider</a>
  291. </li>
  292. <li class="nav-group-task">
  293. <a class="nav-group-task-link" href="Protocols/URLConvertible.html">URLConvertible</a>
  294. </li>
  295. <li class="nav-group-task">
  296. <a class="nav-group-task-link" href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a>
  297. </li>
  298. <li class="nav-group-task">
  299. <a class="nav-group-task-link" href="Protocols.html#/s:9Alamofire17UploadConvertibleP">UploadConvertible</a>
  300. </li>
  301. <li class="nav-group-task">
  302. <a class="nav-group-task-link" href="Protocols/UploadableConvertible.html">UploadableConvertible</a>
  303. </li>
  304. </ul>
  305. </li>
  306. <li class="nav-group-name">
  307. <a class="nav-group-name-link" href="Structs.html">Structures</a>
  308. <ul class="nav-group-tasks">
  309. <li class="nav-group-task">
  310. <a class="nav-group-task-link" href="Structs/DataResponse.html">DataResponse</a>
  311. </li>
  312. <li class="nav-group-task">
  313. <a class="nav-group-task-link" href="Structs/DownloadResponse.html">DownloadResponse</a>
  314. </li>
  315. <li class="nav-group-task">
  316. <a class="nav-group-task-link" href="Structs/Empty.html">Empty</a>
  317. </li>
  318. <li class="nav-group-task">
  319. <a class="nav-group-task-link" href="Structs/HTTPHeader.html">HTTPHeader</a>
  320. </li>
  321. <li class="nav-group-task">
  322. <a class="nav-group-task-link" href="Structs/HTTPHeaders.html">HTTPHeaders</a>
  323. </li>
  324. <li class="nav-group-task">
  325. <a class="nav-group-task-link" href="Structs/JSONEncoding.html">JSONEncoding</a>
  326. </li>
  327. <li class="nav-group-task">
  328. <a class="nav-group-task-link" href="Structs/URLEncoding.html">URLEncoding</a>
  329. </li>
  330. <li class="nav-group-task">
  331. <a class="nav-group-task-link" href="Structs/URLEncoding/Destination.html">– Destination</a>
  332. </li>
  333. <li class="nav-group-task">
  334. <a class="nav-group-task-link" href="Structs/URLEncoding/ArrayEncoding.html">– ArrayEncoding</a>
  335. </li>
  336. <li class="nav-group-task">
  337. <a class="nav-group-task-link" href="Structs/URLEncoding/BoolEncoding.html">– BoolEncoding</a>
  338. </li>
  339. </ul>
  340. </li>
  341. <li class="nav-group-name">
  342. <a class="nav-group-name-link" href="Typealiases.html">Type Aliases</a>
  343. <ul class="nav-group-tasks">
  344. <li class="nav-group-task">
  345. <a class="nav-group-task-link" href="Typealiases.html#/s:9Alamofire10Parametersa">Parameters</a>
  346. </li>
  347. <li class="nav-group-task">
  348. <a class="nav-group-task-link" href="Typealiases.html#/s:9Alamofire22RequestRetryCompletiona">RequestRetryCompletion</a>
  349. </li>
  350. </ul>
  351. </li>
  352. </ul>
  353. </nav>
  354. <article class="main-content">
  355. <section class="section">
  356. <div class="section-content">
  357. <h1>Protocols</h1>
  358. <p>The following protocols are available globally.</p>
  359. </div>
  360. </section>
  361. <section class="section">
  362. <div class="section-content">
  363. <div class="task-group">
  364. <ul class="item-container">
  365. <li class="item">
  366. <div>
  367. <code>
  368. <a name="/s:9Alamofire12EventMonitorP"></a>
  369. <a name="//apple_ref/swift/Protocol/EventMonitor" class="dashAnchor"></a>
  370. <a class="token" href="#/s:9Alamofire12EventMonitorP">EventMonitor</a>
  371. </code>
  372. </div>
  373. <div class="height-container">
  374. <div class="pointer-container"></div>
  375. <section class="section">
  376. <div class="pointer"></div>
  377. <div class="abstract">
  378. <p>Protocol outlining the lifetime events inside Alamofire. It includes both events received from the various
  379. <code>URLSession</code> delegate protocols as well as various events from the lifetime of <code><a href="Classes/Request.html">Request</a></code> and its subclasses.</p>
  380. <a href="Protocols/EventMonitor.html" class="slightly-smaller">See more</a>
  381. </div>
  382. <div class="declaration">
  383. <h4>Declaration</h4>
  384. <div class="language">
  385. <p class="aside-title">Swift</p>
  386. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">EventMonitor</span></code></pre>
  387. </div>
  388. </div>
  389. </section>
  390. </div>
  391. </li>
  392. </ul>
  393. </div>
  394. <div class="task-group">
  395. <ul class="item-container">
  396. <li class="item">
  397. <div>
  398. <code>
  399. <a name="/s:9Alamofire16ParameterEncoderP"></a>
  400. <a name="//apple_ref/swift/Protocol/ParameterEncoder" class="dashAnchor"></a>
  401. <a class="token" href="#/s:9Alamofire16ParameterEncoderP">ParameterEncoder</a>
  402. </code>
  403. </div>
  404. <div class="height-container">
  405. <div class="pointer-container"></div>
  406. <section class="section">
  407. <div class="pointer"></div>
  408. <div class="abstract">
  409. <p>A type that can encode any <code>Encodable</code> type into a <code>URLRequest</code>.</p>
  410. <a href="Protocols/ParameterEncoder.html" class="slightly-smaller">See more</a>
  411. </div>
  412. <div class="declaration">
  413. <h4>Declaration</h4>
  414. <div class="language">
  415. <p class="aside-title">Swift</p>
  416. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">ParameterEncoder</span></code></pre>
  417. </div>
  418. </div>
  419. </section>
  420. </div>
  421. </li>
  422. </ul>
  423. </div>
  424. <div class="task-group">
  425. <ul class="item-container">
  426. <li class="item">
  427. <div>
  428. <code>
  429. <a name="/s:9Alamofire17ParameterEncodingP"></a>
  430. <a name="//apple_ref/swift/Protocol/ParameterEncoding" class="dashAnchor"></a>
  431. <a class="token" href="#/s:9Alamofire17ParameterEncodingP">ParameterEncoding</a>
  432. </code>
  433. </div>
  434. <div class="height-container">
  435. <div class="pointer-container"></div>
  436. <section class="section">
  437. <div class="pointer"></div>
  438. <div class="abstract">
  439. <p>A type used to define how a set of parameters are applied to a <code>URLRequest</code>.</p>
  440. <a href="Protocols/ParameterEncoding.html" class="slightly-smaller">See more</a>
  441. </div>
  442. <div class="declaration">
  443. <h4>Declaration</h4>
  444. <div class="language">
  445. <p class="aside-title">Swift</p>
  446. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">ParameterEncoding</span></code></pre>
  447. </div>
  448. </div>
  449. </section>
  450. </div>
  451. </li>
  452. </ul>
  453. </div>
  454. <div class="task-group">
  455. <div class="task-name-container">
  456. <a name="/Protocol%20Conformances"></a>
  457. <a name="//apple_ref/swift/Section/Protocol Conformances" class="dashAnchor"></a>
  458. <a href="#/Protocol%20Conformances">
  459. <h3 class="section-name">Protocol Conformances</h3>
  460. </a>
  461. </div>
  462. <ul class="item-container">
  463. <li class="item">
  464. <div>
  465. <code>
  466. <a name="/s:9Alamofire15RequestDelegateP"></a>
  467. <a name="//apple_ref/swift/Protocol/RequestDelegate" class="dashAnchor"></a>
  468. <a class="token" href="#/s:9Alamofire15RequestDelegateP">RequestDelegate</a>
  469. </code>
  470. </div>
  471. <div class="height-container">
  472. <div class="pointer-container"></div>
  473. <section class="section">
  474. <div class="pointer"></div>
  475. <div class="abstract">
  476. <p>Protocol abstraction for <code><a href="Classes/Request.html">Request</a></code>&lsquo;s communication back to the <code><a href="Classes/SessionDelegate.html">SessionDelegate</a></code>.</p>
  477. <a href="Protocols/RequestDelegate.html" class="slightly-smaller">See more</a>
  478. </div>
  479. <div class="declaration">
  480. <h4>Declaration</h4>
  481. <div class="language">
  482. <p class="aside-title">Swift</p>
  483. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">RequestDelegate</span> <span class="p">:</span> <span class="kt">AnyObject</span></code></pre>
  484. </div>
  485. </div>
  486. </section>
  487. </div>
  488. </li>
  489. </ul>
  490. </div>
  491. <div class="task-group">
  492. <div class="task-name-container">
  493. <a name="/DataRequest"></a>
  494. <a name="//apple_ref/swift/Section/DataRequest" class="dashAnchor"></a>
  495. <a href="#/DataRequest">
  496. <h3 class="section-name">DataRequest</h3>
  497. </a>
  498. </div>
  499. <ul class="item-container">
  500. <li class="item">
  501. <div>
  502. <code>
  503. <a name="/s:9Alamofire21UploadableConvertibleP"></a>
  504. <a name="//apple_ref/swift/Protocol/UploadableConvertible" class="dashAnchor"></a>
  505. <a class="token" href="#/s:9Alamofire21UploadableConvertibleP">UploadableConvertible</a>
  506. </code>
  507. </div>
  508. <div class="height-container">
  509. <div class="pointer-container"></div>
  510. <section class="section">
  511. <div class="pointer"></div>
  512. <div class="abstract">
  513. <p>Undocumented</p>
  514. <a href="Protocols/UploadableConvertible.html" class="slightly-smaller">See more</a>
  515. </div>
  516. <div class="declaration">
  517. <h4>Declaration</h4>
  518. <div class="language">
  519. <p class="aside-title">Swift</p>
  520. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">UploadableConvertible</span></code></pre>
  521. </div>
  522. </div>
  523. </section>
  524. </div>
  525. </li>
  526. <li class="item">
  527. <div>
  528. <code>
  529. <a name="/s:9Alamofire17UploadConvertibleP"></a>
  530. <a name="//apple_ref/swift/Protocol/UploadConvertible" class="dashAnchor"></a>
  531. <a class="token" href="#/s:9Alamofire17UploadConvertibleP">UploadConvertible</a>
  532. </code>
  533. </div>
  534. <div class="height-container">
  535. <div class="pointer-container"></div>
  536. <section class="section">
  537. <div class="pointer"></div>
  538. <div class="abstract">
  539. <p>Undocumented</p>
  540. </div>
  541. <div class="declaration">
  542. <h4>Declaration</h4>
  543. <div class="language">
  544. <p class="aside-title">Swift</p>
  545. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">UploadConvertible</span> <span class="p">:</span> <span class="kt"><a href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/UploadableConvertible.html">UploadableConvertible</a></span></code></pre>
  546. </div>
  547. </div>
  548. </section>
  549. </div>
  550. </li>
  551. </ul>
  552. </div>
  553. <div class="task-group">
  554. <ul class="item-container">
  555. <li class="item">
  556. <div>
  557. <code>
  558. <a name="/s:9Alamofire14RequestAdapterP"></a>
  559. <a name="//apple_ref/swift/Protocol/RequestAdapter" class="dashAnchor"></a>
  560. <a class="token" href="#/s:9Alamofire14RequestAdapterP">RequestAdapter</a>
  561. </code>
  562. </div>
  563. <div class="height-container">
  564. <div class="pointer-container"></div>
  565. <section class="section">
  566. <div class="pointer"></div>
  567. <div class="abstract">
  568. <p>A type that can inspect and optionally adapt a <code>URLRequest</code> in some manner if necessary.</p>
  569. <a href="Protocols/RequestAdapter.html" class="slightly-smaller">See more</a>
  570. </div>
  571. <div class="declaration">
  572. <h4>Declaration</h4>
  573. <div class="language">
  574. <p class="aside-title">Swift</p>
  575. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">RequestAdapter</span></code></pre>
  576. </div>
  577. </div>
  578. </section>
  579. </div>
  580. </li>
  581. </ul>
  582. </div>
  583. <div class="task-group">
  584. <ul class="item-container">
  585. <li class="item">
  586. <div>
  587. <code>
  588. <a name="/s:9Alamofire14RequestRetrierP"></a>
  589. <a name="//apple_ref/swift/Protocol/RequestRetrier" class="dashAnchor"></a>
  590. <a class="token" href="#/s:9Alamofire14RequestRetrierP">RequestRetrier</a>
  591. </code>
  592. </div>
  593. <div class="height-container">
  594. <div class="pointer-container"></div>
  595. <section class="section">
  596. <div class="pointer"></div>
  597. <div class="abstract">
  598. <p>A type that determines whether a request should be retried after being executed by the specified session manager
  599. and encountering an error.</p>
  600. <a href="Protocols/RequestRetrier.html" class="slightly-smaller">See more</a>
  601. </div>
  602. <div class="declaration">
  603. <h4>Declaration</h4>
  604. <div class="language">
  605. <p class="aside-title">Swift</p>
  606. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">RequestRetrier</span></code></pre>
  607. </div>
  608. </div>
  609. </section>
  610. </div>
  611. </li>
  612. </ul>
  613. </div>
  614. <div class="task-group">
  615. <div class="task-name-container">
  616. <a name="/Protocols"></a>
  617. <a name="//apple_ref/swift/Section/Protocols" class="dashAnchor"></a>
  618. <a href="#/Protocols">
  619. <h3 class="section-name">Protocols</h3>
  620. </a>
  621. </div>
  622. <ul class="item-container">
  623. <li class="item">
  624. <div>
  625. <code>
  626. <a name="/s:9Alamofire30DataResponseSerializerProtocolP"></a>
  627. <a name="//apple_ref/swift/Protocol/DataResponseSerializerProtocol" class="dashAnchor"></a>
  628. <a class="token" href="#/s:9Alamofire30DataResponseSerializerProtocolP">DataResponseSerializerProtocol</a>
  629. </code>
  630. </div>
  631. <div class="height-container">
  632. <div class="pointer-container"></div>
  633. <section class="section">
  634. <div class="pointer"></div>
  635. <div class="abstract">
  636. <p>The type to which all data response serializers must conform in order to serialize a response.</p>
  637. <a href="Protocols/DataResponseSerializerProtocol.html" class="slightly-smaller">See more</a>
  638. </div>
  639. <div class="declaration">
  640. <h4>Declaration</h4>
  641. <div class="language">
  642. <p class="aside-title">Swift</p>
  643. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">DataResponseSerializerProtocol</span></code></pre>
  644. </div>
  645. </div>
  646. </section>
  647. </div>
  648. </li>
  649. <li class="item">
  650. <div>
  651. <code>
  652. <a name="/s:9Alamofire34DownloadResponseSerializerProtocolP"></a>
  653. <a name="//apple_ref/swift/Protocol/DownloadResponseSerializerProtocol" class="dashAnchor"></a>
  654. <a class="token" href="#/s:9Alamofire34DownloadResponseSerializerProtocolP">DownloadResponseSerializerProtocol</a>
  655. </code>
  656. </div>
  657. <div class="height-container">
  658. <div class="pointer-container"></div>
  659. <section class="section">
  660. <div class="pointer"></div>
  661. <div class="abstract">
  662. <p>The type to which all download response serializers must conform in order to serialize a response.</p>
  663. <a href="Protocols/DownloadResponseSerializerProtocol.html" class="slightly-smaller">See more</a>
  664. </div>
  665. <div class="declaration">
  666. <h4>Declaration</h4>
  667. <div class="language">
  668. <p class="aside-title">Swift</p>
  669. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">DownloadResponseSerializerProtocol</span></code></pre>
  670. </div>
  671. </div>
  672. </section>
  673. </div>
  674. </li>
  675. <li class="item">
  676. <div>
  677. <code>
  678. <a name="/s:9Alamofire18ResponseSerializerP"></a>
  679. <a name="//apple_ref/swift/Protocol/ResponseSerializer" class="dashAnchor"></a>
  680. <a class="token" href="#/s:9Alamofire18ResponseSerializerP">ResponseSerializer</a>
  681. </code>
  682. </div>
  683. <div class="height-container">
  684. <div class="pointer-container"></div>
  685. <section class="section">
  686. <div class="pointer"></div>
  687. <div class="abstract">
  688. <p>A serializer that can handle both data and download responses.</p>
  689. <a href="Protocols/ResponseSerializer.html" class="slightly-smaller">See more</a>
  690. </div>
  691. <div class="declaration">
  692. <h4>Declaration</h4>
  693. <div class="language">
  694. <p class="aside-title">Swift</p>
  695. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">ResponseSerializer</span> <span class="p">:</span> <span class="kt"><a href="Protocols/DataResponseSerializerProtocol.html">DataResponseSerializerProtocol</a></span><span class="p">,</span> <span class="kt"><a href="Protocols/DownloadResponseSerializerProtocol.html">DownloadResponseSerializerProtocol</a></span> <span class="k">where</span> <span class="k">Self</span><span class="o">.</span><span class="kt">SerializedObject</span> <span class="o">==</span> <span class="k">Self</span><span class="o">.</span><span class="kt">SerializedObject</span></code></pre>
  696. </div>
  697. </div>
  698. </section>
  699. </div>
  700. </li>
  701. </ul>
  702. </div>
  703. <div class="task-group">
  704. <div class="task-name-container">
  705. <a name="/DataDecoder%20Protocol"></a>
  706. <a name="//apple_ref/swift/Section/DataDecoder Protocol" class="dashAnchor"></a>
  707. <a href="#/DataDecoder%20Protocol">
  708. <h3 class="section-name">DataDecoder Protocol</h3>
  709. </a>
  710. </div>
  711. <ul class="item-container">
  712. <li class="item">
  713. <div>
  714. <code>
  715. <a name="/s:9Alamofire11DataDecoderP"></a>
  716. <a name="//apple_ref/swift/Protocol/DataDecoder" class="dashAnchor"></a>
  717. <a class="token" href="#/s:9Alamofire11DataDecoderP">DataDecoder</a>
  718. </code>
  719. </div>
  720. <div class="height-container">
  721. <div class="pointer-container"></div>
  722. <section class="section">
  723. <div class="pointer"></div>
  724. <div class="abstract">
  725. <p>Any type which can decode <code>Data</code>.</p>
  726. <a href="Protocols/DataDecoder.html" class="slightly-smaller">See more</a>
  727. </div>
  728. <div class="declaration">
  729. <h4>Declaration</h4>
  730. <div class="language">
  731. <p class="aside-title">Swift</p>
  732. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">DataDecoder</span></code></pre>
  733. </div>
  734. </div>
  735. </section>
  736. </div>
  737. </li>
  738. </ul>
  739. </div>
  740. <div class="task-group">
  741. <ul class="item-container">
  742. <li class="item">
  743. <div>
  744. <code>
  745. <a name="/s:9Alamofire21ServerTrustEvaluatingP"></a>
  746. <a name="//apple_ref/swift/Protocol/ServerTrustEvaluating" class="dashAnchor"></a>
  747. <a class="token" href="#/s:9Alamofire21ServerTrustEvaluatingP">ServerTrustEvaluating</a>
  748. </code>
  749. </div>
  750. <div class="height-container">
  751. <div class="pointer-container"></div>
  752. <section class="section">
  753. <div class="pointer"></div>
  754. <div class="abstract">
  755. <p>A protocol describing the API used to evaluate server trusts.</p>
  756. <a href="Protocols/ServerTrustEvaluating.html" class="slightly-smaller">See more</a>
  757. </div>
  758. <div class="declaration">
  759. <h4>Declaration</h4>
  760. <div class="language">
  761. <p class="aside-title">Swift</p>
  762. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">ServerTrustEvaluating</span></code></pre>
  763. </div>
  764. </div>
  765. </section>
  766. </div>
  767. </li>
  768. </ul>
  769. </div>
  770. <div class="task-group">
  771. <ul class="item-container">
  772. <li class="item">
  773. <div>
  774. <code>
  775. <a name="/s:9Alamofire20SessionStateProviderP"></a>
  776. <a name="//apple_ref/swift/Protocol/SessionStateProvider" class="dashAnchor"></a>
  777. <a class="token" href="#/s:9Alamofire20SessionStateProviderP">SessionStateProvider</a>
  778. </code>
  779. </div>
  780. <div class="height-container">
  781. <div class="pointer-container"></div>
  782. <section class="section">
  783. <div class="pointer"></div>
  784. <div class="abstract">
  785. <p>Undocumented</p>
  786. <a href="Protocols/SessionStateProvider.html" class="slightly-smaller">See more</a>
  787. </div>
  788. <div class="declaration">
  789. <h4>Declaration</h4>
  790. <div class="language">
  791. <p class="aside-title">Swift</p>
  792. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">SessionStateProvider</span> <span class="p">:</span> <span class="kt">AnyObject</span></code></pre>
  793. </div>
  794. </div>
  795. </section>
  796. </div>
  797. </li>
  798. </ul>
  799. </div>
  800. <div class="task-group">
  801. <ul class="item-container">
  802. <li class="item">
  803. <div>
  804. <code>
  805. <a name="/s:9Alamofire14URLConvertibleP"></a>
  806. <a name="//apple_ref/swift/Protocol/URLConvertible" class="dashAnchor"></a>
  807. <a class="token" href="#/s:9Alamofire14URLConvertibleP">URLConvertible</a>
  808. </code>
  809. </div>
  810. <div class="height-container">
  811. <div class="pointer-container"></div>
  812. <section class="section">
  813. <div class="pointer"></div>
  814. <div class="abstract">
  815. <p>Types adopting the <code>URLConvertible</code> protocol can be used to construct <code>URL</code>s, which can then be used to construct
  816. <code>URLRequests</code>.</p>
  817. <a href="Protocols/URLConvertible.html" class="slightly-smaller">See more</a>
  818. </div>
  819. <div class="declaration">
  820. <h4>Declaration</h4>
  821. <div class="language">
  822. <p class="aside-title">Swift</p>
  823. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">URLConvertible</span></code></pre>
  824. </div>
  825. </div>
  826. </section>
  827. </div>
  828. </li>
  829. </ul>
  830. </div>
  831. <div class="task-group">
  832. <ul class="item-container">
  833. <li class="item">
  834. <div>
  835. <code>
  836. <a name="/s:9Alamofire21URLRequestConvertibleP"></a>
  837. <a name="//apple_ref/swift/Protocol/URLRequestConvertible" class="dashAnchor"></a>
  838. <a class="token" href="#/s:9Alamofire21URLRequestConvertibleP">URLRequestConvertible</a>
  839. </code>
  840. </div>
  841. <div class="height-container">
  842. <div class="pointer-container"></div>
  843. <section class="section">
  844. <div class="pointer"></div>
  845. <div class="abstract">
  846. <p>Types adopting the <code>URLRequestConvertible</code> protocol can be used to safely construct <code>URLRequest</code>s.</p>
  847. <a href="Protocols/URLRequestConvertible.html" class="slightly-smaller">See more</a>
  848. </div>
  849. <div class="declaration">
  850. <h4>Declaration</h4>
  851. <div class="language">
  852. <p class="aside-title">Swift</p>
  853. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">URLRequestConvertible</span></code></pre>
  854. </div>
  855. </div>
  856. </section>
  857. </div>
  858. </li>
  859. </ul>
  860. </div>
  861. </div>
  862. </section>
  863. </article>
  864. </div>
  865. <section class="footer">
  866. <p>&copy; 2018 <a class="link" href="http://alamofire.org/" target="_blank" rel="external">Alamofire Software Foundation</a>. All rights reserved. (Last updated: 2018-12-05)</p>
  867. <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.9.4</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
  868. </section>
  869. </body>
  870. </div>
  871. </html>