Result.html 66 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>Result Enumeration 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/Enum/Result" class="dashAnchor"></a>
  16. <a title="Result Enumeration 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. Result Enumeration 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>Result</h1>
  358. <div class="declaration">
  359. <div class="language">
  360. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">Value</span><span class="o">&gt;</span></code></pre>
  361. </div>
  362. </div>
  363. <p>Used to represent whether a request was successful or encountered an error.</p>
  364. <ul>
  365. <li><p>success: The request and all post processing operations were successful resulting in the serialization of the
  366. provided associated value.</p></li>
  367. <li><p>failure: The request encountered an error resulting in a failure. The associated values are the original data
  368. provided by the server as well as the error that caused the failure.</p></li>
  369. </ul>
  370. </div>
  371. </section>
  372. <section class="section">
  373. <div class="section-content">
  374. <div class="task-group">
  375. <ul class="item-container">
  376. <li class="item">
  377. <div>
  378. <code>
  379. <a name="/s:9Alamofire6ResultO7successyACyxGxcAEmlF"></a>
  380. <a name="//apple_ref/swift/Element/success(_:)" class="dashAnchor"></a>
  381. <a class="token" href="#/s:9Alamofire6ResultO7successyACyxGxcAEmlF">success(_:)</a>
  382. </code>
  383. </div>
  384. <div class="height-container">
  385. <div class="pointer-container"></div>
  386. <section class="section">
  387. <div class="pointer"></div>
  388. <div class="abstract">
  389. <p>Undocumented</p>
  390. </div>
  391. <div class="declaration">
  392. <h4>Declaration</h4>
  393. <div class="language">
  394. <p class="aside-title">Swift</p>
  395. <pre class="highlight swift"><code><span class="k">case</span> <span class="nf">success</span><span class="p">(</span><span class="kt">Value</span><span class="p">)</span></code></pre>
  396. </div>
  397. </div>
  398. </section>
  399. </div>
  400. </li>
  401. <li class="item">
  402. <div>
  403. <code>
  404. <a name="/s:9Alamofire6ResultO7failureyACyxGs5Error_pcAEmlF"></a>
  405. <a name="//apple_ref/swift/Element/failure(_:)" class="dashAnchor"></a>
  406. <a class="token" href="#/s:9Alamofire6ResultO7failureyACyxGs5Error_pcAEmlF">failure(_:)</a>
  407. </code>
  408. </div>
  409. <div class="height-container">
  410. <div class="pointer-container"></div>
  411. <section class="section">
  412. <div class="pointer"></div>
  413. <div class="abstract">
  414. <p>Undocumented</p>
  415. </div>
  416. <div class="declaration">
  417. <h4>Declaration</h4>
  418. <div class="language">
  419. <p class="aside-title">Swift</p>
  420. <pre class="highlight swift"><code><span class="k">case</span> <span class="nf">failure</span><span class="p">(</span><span class="kt">Error</span><span class="p">)</span></code></pre>
  421. </div>
  422. </div>
  423. </section>
  424. </div>
  425. </li>
  426. <li class="item">
  427. <div>
  428. <code>
  429. <a name="/s:9Alamofire6ResultO9isSuccessSbvp"></a>
  430. <a name="//apple_ref/swift/Property/isSuccess" class="dashAnchor"></a>
  431. <a class="token" href="#/s:9Alamofire6ResultO9isSuccessSbvp">isSuccess</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>Returns <code>true</code> if the result is a success, <code>false</code> otherwise.</p>
  440. </div>
  441. <div class="declaration">
  442. <h4>Declaration</h4>
  443. <div class="language">
  444. <p class="aside-title">Swift</p>
  445. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">isSuccess</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  446. </div>
  447. </div>
  448. </section>
  449. </div>
  450. </li>
  451. <li class="item">
  452. <div>
  453. <code>
  454. <a name="/s:9Alamofire6ResultO9isFailureSbvp"></a>
  455. <a name="//apple_ref/swift/Property/isFailure" class="dashAnchor"></a>
  456. <a class="token" href="#/s:9Alamofire6ResultO9isFailureSbvp">isFailure</a>
  457. </code>
  458. </div>
  459. <div class="height-container">
  460. <div class="pointer-container"></div>
  461. <section class="section">
  462. <div class="pointer"></div>
  463. <div class="abstract">
  464. <p>Returns <code>true</code> if the result is a failure, <code>false</code> otherwise.</p>
  465. </div>
  466. <div class="declaration">
  467. <h4>Declaration</h4>
  468. <div class="language">
  469. <p class="aside-title">Swift</p>
  470. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">isFailure</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  471. </div>
  472. </div>
  473. </section>
  474. </div>
  475. </li>
  476. <li class="item">
  477. <div>
  478. <code>
  479. <a name="/s:9Alamofire6ResultO5valuexSgvp"></a>
  480. <a name="//apple_ref/swift/Property/value" class="dashAnchor"></a>
  481. <a class="token" href="#/s:9Alamofire6ResultO5valuexSgvp">value</a>
  482. </code>
  483. </div>
  484. <div class="height-container">
  485. <div class="pointer-container"></div>
  486. <section class="section">
  487. <div class="pointer"></div>
  488. <div class="abstract">
  489. <p>Returns the associated value if the result is a success, <code>nil</code> otherwise.</p>
  490. </div>
  491. <div class="declaration">
  492. <h4>Declaration</h4>
  493. <div class="language">
  494. <p class="aside-title">Swift</p>
  495. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">Value</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  496. </div>
  497. </div>
  498. </section>
  499. </div>
  500. </li>
  501. <li class="item">
  502. <div>
  503. <code>
  504. <a name="/s:9Alamofire6ResultO5errors5Error_pSgvp"></a>
  505. <a name="//apple_ref/swift/Property/error" class="dashAnchor"></a>
  506. <a class="token" href="#/s:9Alamofire6ResultO5errors5Error_pSgvp">error</a>
  507. </code>
  508. </div>
  509. <div class="height-container">
  510. <div class="pointer-container"></div>
  511. <section class="section">
  512. <div class="pointer"></div>
  513. <div class="abstract">
  514. <p>Returns the associated error value if the result is a failure, <code>nil</code> otherwise.</p>
  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="k">var</span> <span class="nv">error</span><span class="p">:</span> <span class="kt">Error</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  521. </div>
  522. </div>
  523. </section>
  524. </div>
  525. </li>
  526. </ul>
  527. </div>
  528. <div class="task-group">
  529. <div class="task-name-container">
  530. <a name="/CustomStringConvertible"></a>
  531. <a name="//apple_ref/swift/Section/CustomStringConvertible" class="dashAnchor"></a>
  532. <a href="#/CustomStringConvertible">
  533. <h3 class="section-name">CustomStringConvertible</h3>
  534. </a>
  535. </div>
  536. <ul class="item-container">
  537. <li class="item">
  538. <div>
  539. <code>
  540. <a name="/s:9Alamofire6ResultO11descriptionSSvp"></a>
  541. <a name="//apple_ref/swift/Property/description" class="dashAnchor"></a>
  542. <a class="token" href="#/s:9Alamofire6ResultO11descriptionSSvp">description</a>
  543. </code>
  544. </div>
  545. <div class="height-container">
  546. <div class="pointer-container"></div>
  547. <section class="section">
  548. <div class="pointer"></div>
  549. <div class="abstract">
  550. <p>The textual representation used when written to an output stream, which includes whether the result was a
  551. success or failure.</p>
  552. </div>
  553. <div class="declaration">
  554. <h4>Declaration</h4>
  555. <div class="language">
  556. <p class="aside-title">Swift</p>
  557. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">description</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  558. </div>
  559. </div>
  560. </section>
  561. </div>
  562. </li>
  563. </ul>
  564. </div>
  565. <div class="task-group">
  566. <div class="task-name-container">
  567. <a name="/CustomDebugStringConvertible"></a>
  568. <a name="//apple_ref/swift/Section/CustomDebugStringConvertible" class="dashAnchor"></a>
  569. <a href="#/CustomDebugStringConvertible">
  570. <h3 class="section-name">CustomDebugStringConvertible</h3>
  571. </a>
  572. </div>
  573. <ul class="item-container">
  574. <li class="item">
  575. <div>
  576. <code>
  577. <a name="/s:9Alamofire6ResultO16debugDescriptionSSvp"></a>
  578. <a name="//apple_ref/swift/Property/debugDescription" class="dashAnchor"></a>
  579. <a class="token" href="#/s:9Alamofire6ResultO16debugDescriptionSSvp">debugDescription</a>
  580. </code>
  581. </div>
  582. <div class="height-container">
  583. <div class="pointer-container"></div>
  584. <section class="section">
  585. <div class="pointer"></div>
  586. <div class="abstract">
  587. <p>The debug textual representation used when written to an output stream, which includes whether the result was a
  588. success or failure in addition to the value or error.</p>
  589. </div>
  590. <div class="declaration">
  591. <h4>Declaration</h4>
  592. <div class="language">
  593. <p class="aside-title">Swift</p>
  594. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">debugDescription</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  595. </div>
  596. </div>
  597. </section>
  598. </div>
  599. </li>
  600. </ul>
  601. </div>
  602. <div class="task-group">
  603. <div class="task-name-container">
  604. <a name="/Functional%20APIs"></a>
  605. <a name="//apple_ref/swift/Section/Functional APIs" class="dashAnchor"></a>
  606. <a href="#/Functional%20APIs">
  607. <h3 class="section-name">Functional APIs</h3>
  608. </a>
  609. </div>
  610. <ul class="item-container">
  611. <li class="item">
  612. <div>
  613. <code>
  614. <a name="/s:9Alamofire6ResultO5valueACyxGxyKXE_tcfc"></a>
  615. <a name="//apple_ref/swift/Method/init(value:)" class="dashAnchor"></a>
  616. <a class="token" href="#/s:9Alamofire6ResultO5valueACyxGxyKXE_tcfc">init(value:)</a>
  617. </code>
  618. </div>
  619. <div class="height-container">
  620. <div class="pointer-container"></div>
  621. <section class="section">
  622. <div class="pointer"></div>
  623. <div class="abstract">
  624. <p>Creates a <code>Result</code> instance from the result of a closure.</p>
  625. <p>A failure result is created when the closure throws, and a success result is created when the closure
  626. succeeds without throwing an error.</p>
  627. <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">someString</span><span class="p">()</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">String</span> <span class="p">{</span> <span class="o">...</span> <span class="p">}</span>
  628. <span class="k">let</span> <span class="nv">result</span> <span class="o">=</span> <span class="kt">Result</span><span class="p">(</span><span class="nv">value</span><span class="p">:</span> <span class="p">{</span>
  629. <span class="k">return</span> <span class="k">try</span> <span class="nf">someString</span><span class="p">()</span>
  630. <span class="p">})</span>
  631. <span class="c1">// The type of result is Result&lt;String&gt;</span>
  632. </code></pre>
  633. <p>The trailing closure syntax is also supported:</p>
  634. <pre class="highlight swift"><code><span class="k">let</span> <span class="nv">result</span> <span class="o">=</span> <span class="kt">Result</span> <span class="p">{</span> <span class="k">try</span> <span class="nf">someString</span><span class="p">()</span> <span class="p">}</span>
  635. </code></pre>
  636. </div>
  637. <div class="declaration">
  638. <h4>Declaration</h4>
  639. <div class="language">
  640. <p class="aside-title">Swift</p>
  641. <pre class="highlight swift"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">(</span><span class="nv">value</span><span class="p">:</span> <span class="p">()</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">Value</span><span class="p">)</span></code></pre>
  642. </div>
  643. </div>
  644. <div>
  645. <h4>Parameters</h4>
  646. <table class="graybox">
  647. <tbody>
  648. <tr>
  649. <td>
  650. <code>
  651. <em>value</em>
  652. </code>
  653. </td>
  654. <td>
  655. <div>
  656. <p>The closure to execute and create the result for.</p>
  657. </div>
  658. </td>
  659. </tr>
  660. </tbody>
  661. </table>
  662. </div>
  663. </section>
  664. </div>
  665. </li>
  666. <li class="item">
  667. <div>
  668. <code>
  669. <a name="/s:9Alamofire6ResultO6unwrapxyKF"></a>
  670. <a name="//apple_ref/swift/Method/unwrap()" class="dashAnchor"></a>
  671. <a class="token" href="#/s:9Alamofire6ResultO6unwrapxyKF">unwrap()</a>
  672. </code>
  673. </div>
  674. <div class="height-container">
  675. <div class="pointer-container"></div>
  676. <section class="section">
  677. <div class="pointer"></div>
  678. <div class="abstract">
  679. <p>Returns the success value, or throws the failure error.</p>
  680. <pre class="highlight swift"><code><span class="k">let</span> <span class="nv">possibleString</span><span class="p">:</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">String</span><span class="o">&gt;</span> <span class="o">=</span> <span class="o">.</span><span class="nf">success</span><span class="p">(</span><span class="s">"success"</span><span class="p">)</span>
  681. <span class="k">try</span> <span class="nf">print</span><span class="p">(</span><span class="n">possibleString</span><span class="o">.</span><span class="nf">unwrap</span><span class="p">())</span>
  682. <span class="c1">// Prints "success"</span>
  683. <span class="k">let</span> <span class="nv">noString</span><span class="p">:</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">String</span><span class="o">&gt;</span> <span class="o">=</span> <span class="o">.</span><span class="nf">failure</span><span class="p">(</span><span class="n">error</span><span class="p">)</span>
  684. <span class="k">try</span> <span class="nf">print</span><span class="p">(</span><span class="n">noString</span><span class="o">.</span><span class="nf">unwrap</span><span class="p">())</span>
  685. <span class="c1">// Throws error</span>
  686. </code></pre>
  687. </div>
  688. <div class="declaration">
  689. <h4>Declaration</h4>
  690. <div class="language">
  691. <p class="aside-title">Swift</p>
  692. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">unwrap</span><span class="p">()</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">Value</span></code></pre>
  693. </div>
  694. </div>
  695. </section>
  696. </div>
  697. </li>
  698. <li class="item">
  699. <div>
  700. <code>
  701. <a name="/s:9Alamofire6ResultO3mapyACyqd__Gqd__xXElF"></a>
  702. <a name="//apple_ref/swift/Method/map(_:)" class="dashAnchor"></a>
  703. <a class="token" href="#/s:9Alamofire6ResultO3mapyACyqd__Gqd__xXElF">map(_:)</a>
  704. </code>
  705. </div>
  706. <div class="height-container">
  707. <div class="pointer-container"></div>
  708. <section class="section">
  709. <div class="pointer"></div>
  710. <div class="abstract">
  711. <p>Evaluates the specified closure when the <code>Result</code> is a success, passing the unwrapped value as a parameter.</p>
  712. <p>Use the <code>map</code> method with a closure that does not throw. For example:</p>
  713. <pre class="highlight swift"><code><span class="k">let</span> <span class="nv">possibleData</span><span class="p">:</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">Data</span><span class="o">&gt;</span> <span class="o">=</span> <span class="o">.</span><span class="nf">success</span><span class="p">(</span><span class="kt">Data</span><span class="p">())</span>
  714. <span class="k">let</span> <span class="nv">possibleInt</span> <span class="o">=</span> <span class="n">possibleData</span><span class="o">.</span><span class="n">map</span> <span class="p">{</span> <span class="nv">$0</span><span class="o">.</span><span class="n">count</span> <span class="p">}</span>
  715. <span class="k">try</span> <span class="nf">print</span><span class="p">(</span><span class="n">possibleInt</span><span class="o">.</span><span class="nf">unwrap</span><span class="p">())</span>
  716. <span class="c1">// Prints "0"</span>
  717. <span class="k">let</span> <span class="nv">noData</span><span class="p">:</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">Data</span><span class="o">&gt;</span> <span class="o">=</span> <span class="o">.</span><span class="nf">failure</span><span class="p">(</span><span class="n">error</span><span class="p">)</span>
  718. <span class="k">let</span> <span class="nv">noInt</span> <span class="o">=</span> <span class="n">noData</span><span class="o">.</span><span class="n">map</span> <span class="p">{</span> <span class="nv">$0</span><span class="o">.</span><span class="n">count</span> <span class="p">}</span>
  719. <span class="k">try</span> <span class="nf">print</span><span class="p">(</span><span class="n">noInt</span><span class="o">.</span><span class="nf">unwrap</span><span class="p">())</span>
  720. <span class="c1">// Throws error</span>
  721. </code></pre>
  722. </div>
  723. <div class="declaration">
  724. <h4>Declaration</h4>
  725. <div class="language">
  726. <p class="aside-title">Swift</p>
  727. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="n">map</span><span class="o">&lt;</span><span class="kt">T</span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">transform</span><span class="p">:</span> <span class="p">(</span><span class="kt">Value</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">T</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">T</span><span class="o">&gt;</span></code></pre>
  728. </div>
  729. </div>
  730. <div>
  731. <h4>Parameters</h4>
  732. <table class="graybox">
  733. <tbody>
  734. <tr>
  735. <td>
  736. <code>
  737. <em>transform</em>
  738. </code>
  739. </td>
  740. <td>
  741. <div>
  742. <p>A closure that takes the success value of the <code>Result</code> instance.</p>
  743. </div>
  744. </td>
  745. </tr>
  746. </tbody>
  747. </table>
  748. </div>
  749. <div>
  750. <h4>Return Value</h4>
  751. <p>A <code>Result</code> containing the result of the given closure. If this instance is a failure, returns the
  752. same failure.</p>
  753. </div>
  754. </section>
  755. </div>
  756. </li>
  757. <li class="item">
  758. <div>
  759. <code>
  760. <a name="/s:9Alamofire6ResultO7flatMapyACyqd__Gqd__xKXElF"></a>
  761. <a name="//apple_ref/swift/Method/flatMap(_:)" class="dashAnchor"></a>
  762. <a class="token" href="#/s:9Alamofire6ResultO7flatMapyACyqd__Gqd__xKXElF">flatMap(_:)</a>
  763. </code>
  764. </div>
  765. <div class="height-container">
  766. <div class="pointer-container"></div>
  767. <section class="section">
  768. <div class="pointer"></div>
  769. <div class="abstract">
  770. <p>Evaluates the specified closure when the <code>Result</code> is a success, passing the unwrapped value as a parameter.</p>
  771. <p>Use the <code>flatMap</code> method with a closure that may throw an error. For example:</p>
  772. <pre class="highlight swift"><code><span class="k">let</span> <span class="nv">possibleData</span><span class="p">:</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">Data</span><span class="o">&gt;</span> <span class="o">=</span> <span class="o">.</span><span class="nf">success</span><span class="p">(</span><span class="kt">Data</span><span class="p">(</span><span class="o">...</span><span class="p">))</span>
  773. <span class="k">let</span> <span class="nv">possibleObject</span> <span class="o">=</span> <span class="n">possibleData</span><span class="o">.</span><span class="n">flatMap</span> <span class="p">{</span>
  774. <span class="k">try</span> <span class="kt">JSONSerialization</span><span class="o">.</span><span class="nf">jsonObject</span><span class="p">(</span><span class="nv">with</span><span class="p">:</span> <span class="nv">$0</span><span class="p">)</span>
  775. <span class="p">}</span>
  776. </code></pre>
  777. </div>
  778. <div class="declaration">
  779. <h4>Declaration</h4>
  780. <div class="language">
  781. <p class="aside-title">Swift</p>
  782. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="n">flatMap</span><span class="o">&lt;</span><span class="kt">T</span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">transform</span><span class="p">:</span> <span class="p">(</span><span class="kt">Value</span><span class="p">)</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">T</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">T</span><span class="o">&gt;</span></code></pre>
  783. </div>
  784. </div>
  785. <div>
  786. <h4>Parameters</h4>
  787. <table class="graybox">
  788. <tbody>
  789. <tr>
  790. <td>
  791. <code>
  792. <em>transform</em>
  793. </code>
  794. </td>
  795. <td>
  796. <div>
  797. <p>A closure that takes the success value of the instance.</p>
  798. </div>
  799. </td>
  800. </tr>
  801. </tbody>
  802. </table>
  803. </div>
  804. <div>
  805. <h4>Return Value</h4>
  806. <p>A <code>Result</code> containing the result of the given closure. If this instance is a failure, returns the
  807. same failure.</p>
  808. </div>
  809. </section>
  810. </div>
  811. </li>
  812. <li class="item">
  813. <div>
  814. <code>
  815. <a name="/s:9Alamofire6ResultO8mapErroryACyxGqd__s0D0_pXEsAFRd__lF"></a>
  816. <a name="//apple_ref/swift/Method/mapError(_:)" class="dashAnchor"></a>
  817. <a class="token" href="#/s:9Alamofire6ResultO8mapErroryACyxGqd__s0D0_pXEsAFRd__lF">mapError(_:)</a>
  818. </code>
  819. </div>
  820. <div class="height-container">
  821. <div class="pointer-container"></div>
  822. <section class="section">
  823. <div class="pointer"></div>
  824. <div class="abstract">
  825. <p>Evaluates the specified closure when the <code>Result</code> is a failure, passing the unwrapped error as a parameter.</p>
  826. <p>Use the <code>mapError</code> function with a closure that does not throw. For example:</p>
  827. <pre class="highlight swift"><code><span class="k">let</span> <span class="nv">possibleData</span><span class="p">:</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">Data</span><span class="o">&gt;</span> <span class="o">=</span> <span class="o">.</span><span class="nf">failure</span><span class="p">(</span><span class="n">someError</span><span class="p">)</span>
  828. <span class="k">let</span> <span class="nv">withMyError</span><span class="p">:</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">Data</span><span class="o">&gt;</span> <span class="o">=</span> <span class="n">possibleData</span><span class="o">.</span><span class="n">mapError</span> <span class="p">{</span> <span class="kt">MyError</span><span class="o">.</span><span class="nf">error</span><span class="p">(</span><span class="nv">$0</span><span class="p">)</span> <span class="p">}</span>
  829. </code></pre>
  830. </div>
  831. <div class="declaration">
  832. <h4>Declaration</h4>
  833. <div class="language">
  834. <p class="aside-title">Swift</p>
  835. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="n">mapError</span><span class="o">&lt;</span><span class="kt">T</span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">transform</span><span class="p">:</span> <span class="p">(</span><span class="kt">Error</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">T</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Result</span> <span class="k">where</span> <span class="kt">T</span> <span class="p">:</span> <span class="kt">Error</span></code></pre>
  836. </div>
  837. </div>
  838. <div>
  839. <h4>Parameters</h4>
  840. <table class="graybox">
  841. <tbody>
  842. <tr>
  843. <td>
  844. <code>
  845. <em>transform</em>
  846. </code>
  847. </td>
  848. <td>
  849. <div>
  850. <p>A closure that takes the error of the instance.</p>
  851. </div>
  852. </td>
  853. </tr>
  854. </tbody>
  855. </table>
  856. </div>
  857. <div>
  858. <h4>Return Value</h4>
  859. <p>A <code>Result</code> instance containing the result of the transform. If this instance is a success, returns
  860. the same instance.</p>
  861. </div>
  862. </section>
  863. </div>
  864. </li>
  865. <li class="item">
  866. <div>
  867. <code>
  868. <a name="/s:9Alamofire6ResultO12flatMapErroryACyxGqd__s0E0_pKXEsAFRd__lF"></a>
  869. <a name="//apple_ref/swift/Method/flatMapError(_:)" class="dashAnchor"></a>
  870. <a class="token" href="#/s:9Alamofire6ResultO12flatMapErroryACyxGqd__s0E0_pKXEsAFRd__lF">flatMapError(_:)</a>
  871. </code>
  872. </div>
  873. <div class="height-container">
  874. <div class="pointer-container"></div>
  875. <section class="section">
  876. <div class="pointer"></div>
  877. <div class="abstract">
  878. <p>Evaluates the specified closure when the <code>Result</code> is a failure, passing the unwrapped error as a parameter.</p>
  879. <p>Use the <code>flatMapError</code> function with a closure that may throw an error. For example:</p>
  880. <pre class="highlight swift"><code><span class="k">let</span> <span class="nv">possibleData</span><span class="p">:</span> <span class="kt">Result</span><span class="o">&lt;</span><span class="kt">Data</span><span class="o">&gt;</span> <span class="o">=</span> <span class="o">.</span><span class="nf">success</span><span class="p">(</span><span class="kt">Data</span><span class="p">(</span><span class="o">...</span><span class="p">))</span>
  881. <span class="k">let</span> <span class="nv">possibleObject</span> <span class="o">=</span> <span class="n">possibleData</span><span class="o">.</span><span class="n">flatMapError</span> <span class="p">{</span>
  882. <span class="k">try</span> <span class="nf">someFailableFunction</span><span class="p">(</span><span class="nv">taking</span><span class="p">:</span> <span class="nv">$0</span><span class="p">)</span>
  883. <span class="p">}</span>
  884. </code></pre>
  885. </div>
  886. <div class="declaration">
  887. <h4>Declaration</h4>
  888. <div class="language">
  889. <p class="aside-title">Swift</p>
  890. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="n">flatMapError</span><span class="o">&lt;</span><span class="kt">T</span><span class="o">&gt;</span><span class="p">(</span><span class="n">_</span> <span class="nv">transform</span><span class="p">:</span> <span class="p">(</span><span class="kt">Error</span><span class="p">)</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">T</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Result</span> <span class="k">where</span> <span class="kt">T</span> <span class="p">:</span> <span class="kt">Error</span></code></pre>
  891. </div>
  892. </div>
  893. <div>
  894. <h4>Parameters</h4>
  895. <table class="graybox">
  896. <tbody>
  897. <tr>
  898. <td>
  899. <code>
  900. <em>transform</em>
  901. </code>
  902. </td>
  903. <td>
  904. <div>
  905. <p>A throwing closure that takes the error of the instance.</p>
  906. </div>
  907. </td>
  908. </tr>
  909. </tbody>
  910. </table>
  911. </div>
  912. <div>
  913. <h4>Return Value</h4>
  914. <p>A <code>Result</code> instance containing the result of the transform. If this instance is a success, returns
  915. the same instance.</p>
  916. </div>
  917. </section>
  918. </div>
  919. </li>
  920. <li class="item">
  921. <div>
  922. <code>
  923. <a name="/s:9Alamofire6ResultO9withValueyACyxGyxKXEKF"></a>
  924. <a name="//apple_ref/swift/Method/withValue(_:)" class="dashAnchor"></a>
  925. <a class="token" href="#/s:9Alamofire6ResultO9withValueyACyxGyxKXEKF">withValue(_:)</a>
  926. </code>
  927. </div>
  928. <div class="height-container">
  929. <div class="pointer-container"></div>
  930. <section class="section">
  931. <div class="pointer"></div>
  932. <div class="abstract">
  933. <p>Evaluates the specified closure when the <code>Result</code> is a success, passing the unwrapped value as a parameter.</p>
  934. <p>Use the <code>withValue</code> function to evaluate the passed closure without modifying the <code>Result</code> instance.</p>
  935. </div>
  936. <div class="declaration">
  937. <h4>Declaration</h4>
  938. <div class="language">
  939. <p class="aside-title">Swift</p>
  940. <pre class="highlight swift"><code><span class="kd">@discardableResult</span>
  941. <span class="kd">public</span> <span class="kd">func</span> <span class="nf">withValue</span><span class="p">(</span><span class="n">_</span> <span class="nv">closure</span><span class="p">:</span> <span class="p">(</span><span class="kt">Value</span><span class="p">)</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="k">rethrows</span> <span class="o">-&gt;</span> <span class="kt">Result</span></code></pre>
  942. </div>
  943. </div>
  944. <div>
  945. <h4>Parameters</h4>
  946. <table class="graybox">
  947. <tbody>
  948. <tr>
  949. <td>
  950. <code>
  951. <em>closure</em>
  952. </code>
  953. </td>
  954. <td>
  955. <div>
  956. <p>A closure that takes the success value of this instance.</p>
  957. </div>
  958. </td>
  959. </tr>
  960. </tbody>
  961. </table>
  962. </div>
  963. <div>
  964. <h4>Return Value</h4>
  965. <p>This <code>Result</code> instance, unmodified.</p>
  966. </div>
  967. </section>
  968. </div>
  969. </li>
  970. <li class="item">
  971. <div>
  972. <code>
  973. <a name="/s:9Alamofire6ResultO9withErroryACyxGys0D0_pKXEKF"></a>
  974. <a name="//apple_ref/swift/Method/withError(_:)" class="dashAnchor"></a>
  975. <a class="token" href="#/s:9Alamofire6ResultO9withErroryACyxGys0D0_pKXEKF">withError(_:)</a>
  976. </code>
  977. </div>
  978. <div class="height-container">
  979. <div class="pointer-container"></div>
  980. <section class="section">
  981. <div class="pointer"></div>
  982. <div class="abstract">
  983. <p>Evaluates the specified closure when the <code>Result</code> is a failure, passing the unwrapped error as a parameter.</p>
  984. <p>Use the <code>withError</code> function to evaluate the passed closure without modifying the <code>Result</code> instance.</p>
  985. </div>
  986. <div class="declaration">
  987. <h4>Declaration</h4>
  988. <div class="language">
  989. <p class="aside-title">Swift</p>
  990. <pre class="highlight swift"><code><span class="kd">@discardableResult</span>
  991. <span class="kd">public</span> <span class="kd">func</span> <span class="nf">withError</span><span class="p">(</span><span class="n">_</span> <span class="nv">closure</span><span class="p">:</span> <span class="p">(</span><span class="kt">Error</span><span class="p">)</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="k">rethrows</span> <span class="o">-&gt;</span> <span class="kt">Result</span></code></pre>
  992. </div>
  993. </div>
  994. <div>
  995. <h4>Parameters</h4>
  996. <table class="graybox">
  997. <tbody>
  998. <tr>
  999. <td>
  1000. <code>
  1001. <em>closure</em>
  1002. </code>
  1003. </td>
  1004. <td>
  1005. <div>
  1006. <p>A closure that takes the success value of this instance.</p>
  1007. </div>
  1008. </td>
  1009. </tr>
  1010. </tbody>
  1011. </table>
  1012. </div>
  1013. <div>
  1014. <h4>Return Value</h4>
  1015. <p>This <code>Result</code> instance, unmodified.</p>
  1016. </div>
  1017. </section>
  1018. </div>
  1019. </li>
  1020. <li class="item">
  1021. <div>
  1022. <code>
  1023. <a name="/s:9Alamofire6ResultO9ifSuccessyACyxGyyKXEKF"></a>
  1024. <a name="//apple_ref/swift/Method/ifSuccess(_:)" class="dashAnchor"></a>
  1025. <a class="token" href="#/s:9Alamofire6ResultO9ifSuccessyACyxGyyKXEKF">ifSuccess(_:)</a>
  1026. </code>
  1027. </div>
  1028. <div class="height-container">
  1029. <div class="pointer-container"></div>
  1030. <section class="section">
  1031. <div class="pointer"></div>
  1032. <div class="abstract">
  1033. <p>Evaluates the specified closure when the <code>Result</code> is a success.</p>
  1034. <p>Use the <code>ifSuccess</code> function to evaluate the passed closure without modifying the <code>Result</code> instance.</p>
  1035. </div>
  1036. <div class="declaration">
  1037. <h4>Declaration</h4>
  1038. <div class="language">
  1039. <p class="aside-title">Swift</p>
  1040. <pre class="highlight swift"><code><span class="kd">@discardableResult</span>
  1041. <span class="kd">public</span> <span class="kd">func</span> <span class="nf">ifSuccess</span><span class="p">(</span><span class="n">_</span> <span class="nv">closure</span><span class="p">:</span> <span class="p">()</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="k">rethrows</span> <span class="o">-&gt;</span> <span class="kt">Result</span></code></pre>
  1042. </div>
  1043. </div>
  1044. <div>
  1045. <h4>Parameters</h4>
  1046. <table class="graybox">
  1047. <tbody>
  1048. <tr>
  1049. <td>
  1050. <code>
  1051. <em>closure</em>
  1052. </code>
  1053. </td>
  1054. <td>
  1055. <div>
  1056. <p>A <code>Void</code> closure.</p>
  1057. </div>
  1058. </td>
  1059. </tr>
  1060. </tbody>
  1061. </table>
  1062. </div>
  1063. <div>
  1064. <h4>Return Value</h4>
  1065. <p>This <code>Result</code> instance, unmodified.</p>
  1066. </div>
  1067. </section>
  1068. </div>
  1069. </li>
  1070. <li class="item">
  1071. <div>
  1072. <code>
  1073. <a name="/s:9Alamofire6ResultO9ifFailureyACyxGyyKXEKF"></a>
  1074. <a name="//apple_ref/swift/Method/ifFailure(_:)" class="dashAnchor"></a>
  1075. <a class="token" href="#/s:9Alamofire6ResultO9ifFailureyACyxGyyKXEKF">ifFailure(_:)</a>
  1076. </code>
  1077. </div>
  1078. <div class="height-container">
  1079. <div class="pointer-container"></div>
  1080. <section class="section">
  1081. <div class="pointer"></div>
  1082. <div class="abstract">
  1083. <p>Evaluates the specified closure when the <code>Result</code> is a failure.</p>
  1084. <p>Use the <code>ifFailure</code> function to evaluate the passed closure without modifying the <code>Result</code> instance.</p>
  1085. </div>
  1086. <div class="declaration">
  1087. <h4>Declaration</h4>
  1088. <div class="language">
  1089. <p class="aside-title">Swift</p>
  1090. <pre class="highlight swift"><code><span class="kd">@discardableResult</span>
  1091. <span class="kd">public</span> <span class="kd">func</span> <span class="nf">ifFailure</span><span class="p">(</span><span class="n">_</span> <span class="nv">closure</span><span class="p">:</span> <span class="p">()</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="k">rethrows</span> <span class="o">-&gt;</span> <span class="kt">Result</span></code></pre>
  1092. </div>
  1093. </div>
  1094. <div>
  1095. <h4>Parameters</h4>
  1096. <table class="graybox">
  1097. <tbody>
  1098. <tr>
  1099. <td>
  1100. <code>
  1101. <em>closure</em>
  1102. </code>
  1103. </td>
  1104. <td>
  1105. <div>
  1106. <p>A <code>Void</code> closure.</p>
  1107. </div>
  1108. </td>
  1109. </tr>
  1110. </tbody>
  1111. </table>
  1112. </div>
  1113. <div>
  1114. <h4>Return Value</h4>
  1115. <p>This <code>Result</code> instance, unmodified.</p>
  1116. </div>
  1117. </section>
  1118. </div>
  1119. </li>
  1120. </ul>
  1121. </div>
  1122. </div>
  1123. </section>
  1124. </article>
  1125. </div>
  1126. <section class="footer">
  1127. <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>
  1128. <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>
  1129. </section>
  1130. </body>
  1131. </div>
  1132. </html>