swift函数式编程之compose


func a(en:String) -> String {

    return en + "a";

func b(en:String) -> String {

    return en + "b";

func c(en:String) -> String {

    return en + "c";

func pipeLineGo(en:[(String) -> String ])->(String)->String{

    func innerFunc(px:String)->String{

        return en.reduce(px, { (px, fn) -> String in

            return fn(px);

        })

    }

    

    return innerFunc;

        let ret = pipeLineGo(en: [a,b,c]);

        let result = ret("ddd");