import Foundation import KeychainAccess enum APIError : Error { case accessTokenExpired case networkError // Add more error cases as needed } class APIManager { private let keychain = Keychain (service: "com.example.app.refreshToken" ) private let refreshTokenKey = "refreshToken" private var accessToken: String ? func callAPI < T : Codable >( urlString : String , method : String , parameters : [ String : Any ] ? , completion : @escaping ( Result < T , APIError >) -> Void ) { guard let url = URL (string: urlString) else { completion(.failure(.networkError)) return } var request = URLRequest (url: url) request.httpMethod = method // Add access token to the request headers if available if let token = accessToken { request.setValue( "Bearer \(token) " , forHTTPHeaderField: "Aut...
Subscripts:-
Subscripts are used to access information from a collection , sequence and a list in classes, structured and enumeration without using any sequence method.
Or
These subscript are used to store and retrieve the value with the help of index without sequence method.
Syntax:- Subscripts
subscript(<perameters>) -> <return type>{
//getter
get{
//subscript value declarations
}
set(newValue){ // setter are optional
//definition here
}
get{
//subscript value declarations
}
set(newValue){ // setter are optional
//definition here
}
Example:- Subscripts
class yearsOfMonths {
var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
subscript(index: Int) -> String{
get {
return months[index]]
}
set(newValue){
self.months[index] = newValue
}
}
}
var yom = yearsOfMonths()
print(yom[0])
//Getter
yom[0] = "December"
//Setter
print(yom[0])
Output:- January
December
Comments
Post a Comment