Guest User

Untitled

a guest
Feb 12th, 2019
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. typealias completionResponse<T:Codable> = ((_ success:T?,_ error:Error?) -> Void)
  2.  
  3. static func login<T:Codable>(userName:String,password:String,completion:@escaping completionResponse<T>) {
  4. self.performRequest(request: APIRouterUserModule.login(email: userName, password: password)) {(model) in
  5.  
  6. self.handleResponseCallCompletion(result: model, completion: completion)
  7. }
  8. }
  9.  
  10. struct FailableResponse <T:Codable,E:Codable> : Codable {
  11.  
  12. var success:T?
  13. var failure:E?
  14.  
  15. public init(from decoder:Decoder) throws {
  16.  
  17. let singleValue = try decoder.singleValueContainer()
  18. success = try singleValue.decode(T.self)
  19.  
  20. failure = try singleValue.decode(E.self)
  21. }
  22. }
Add Comment
Please, Sign In to add comment