swift的enum模式—对Alamofire入口的解析--数据结构与操作结合的模式

swift的枚举模式是数据结构与操作结合的模式

1、enum本质是一个类型,可以定义变量;

它定义的变量可以用到其它变量用的的任何地方:函数的输入、输出、成员变量、临时变量等;

这个变量还可以带有附加信息:rawValue、关联值等;

枚举变量是一个变量,枚举变量是一个可以携带更多信息的变量;

2、枚举变量自带switch case 操作属性:

这使得建立在枚举变量上的操作可以根据变量进行定制;

3、枚举类型有自带或扩展的函数(操作):

根据程序=数据结构+算法 的定义,可以在枚举类型的变量上扩展更多的操作;

可以通过对协议的扩展,模块桥接关联。

public enum BoolEncoding {

        case numeric, literal

        func encode(value: Bool) -> String {

            switch self {

            case .numeric:

                return value ? "1" : "0"

            case .literal:

                return value ? "true" : "false"

            }

        }

    }