Need a unique gift idea?
A Pastebin account makes a great Christmas gift
SHARE
TWEET

Untitled

a guest Dec 6th, 2018 55 Never
Upgrade to PRO!
ENDING IN00days00hours00mins00secs
 
  1. // Базовый класс
  2. class Parameters {
  3.    
  4.     var parameters: [String: Any] = [:]
  5.    
  6.     /**
  7.      Добавить параметр.
  8.      
  9.      - parameter parameter: имя параметра;
  10.      - parameter value: значение параметра.
  11.      */
  12.     @discardableResult
  13.     open func withParameter(parameter: String, value: Any) -> Self {
  14.         self.parameters[parameter] = value
  15.         return self
  16.     }
  17. }
  18.  
  19. // реализация сереализатора конкртенного типа
  20. final class CityParameters: Parameters {
  21.     private enum Key: String {
  22.         case id
  23.         case name
  24.         case mapTypeValue = "map_type"
  25.         case center
  26.         case currency
  27.     }
  28.    
  29.     init(city: City) {
  30.         super.init()
  31.         withParameter(parameter: Key.id.rawValue, value: city.id)
  32.         withParameter(parameter: Key.name.rawValue, value: city.name)
  33.         withParameter(parameter: Key.mapTypeValue.rawValue, value: city.mapTypeValue)
  34.         let center = CoordinateParameters(coordinate: city.center).parameters
  35.         withParameter(parameter: Key.center.rawValue, value: center)
  36.         withParameter(parameter: Key.currency.rawValue, value: city.currency)
  37.     }
  38. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top