Sources/OphanThrift/product.swift (71 lines of code) (raw):
/**
* Autogenerated by Thrift Compiler (0.21.0)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
*/
import Foundation
import Thrift
public enum Product : TEnum {
case contribution
case recurring_contribution
case membership_supporter
case membership_patron
case membership_partner
case digital_subscription
case paper_subscription_everyday
case paper_subscription_sixday
case paper_subscription_weekend
case paper_subscription_sunday
case print_subscription
case app_premium_tier
case supporter_plus
case guardian_patron
case guardian_light
public static func read(from proto: TProtocol) throws -> Product {
let raw: Int32 = try proto.read()
let new = Product(rawValue: raw)
if let unwrapped = new {
return unwrapped
} else {
throw TProtocolError(error: .invalidData,
message: "Invalid enum value (\(raw)) for \(Product.self)")
}
}
public init() {
self = .contribution
}
public var rawValue: Int32 {
switch self {
case .contribution: return 1
case .recurring_contribution: return 2
case .membership_supporter: return 3
case .membership_patron: return 4
case .membership_partner: return 5
case .digital_subscription: return 6
case .paper_subscription_everyday: return 7
case .paper_subscription_sixday: return 8
case .paper_subscription_weekend: return 9
case .paper_subscription_sunday: return 10
case .print_subscription: return 11
case .app_premium_tier: return 12
case .supporter_plus: return 13
case .guardian_patron: return 14
case .guardian_light: return 15
}
}
public init?(rawValue: Int32) {
switch rawValue {
case 1: self = .contribution
case 2: self = .recurring_contribution
case 3: self = .membership_supporter
case 4: self = .membership_patron
case 5: self = .membership_partner
case 6: self = .digital_subscription
case 7: self = .paper_subscription_everyday
case 8: self = .paper_subscription_sixday
case 9: self = .paper_subscription_weekend
case 10: self = .paper_subscription_sunday
case 11: self = .print_subscription
case 12: self = .app_premium_tier
case 13: self = .supporter_plus
case 14: self = .guardian_patron
case 15: self = .guardian_light
default: return nil
}
}
}