AutoCurry.swift 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. // This is an autogenerated file. Do not edit this file manually.
  2. public extension Dollar {
  3. class func curry<T1, T2, R>(_ f: @escaping (T1, T2) -> R) -> (T1) -> (T2) -> R {
  4. return { t1 in { t2 in f(t1, t2) } }
  5. }
  6. class func curry<T1, T2, T3, R>(_ f: @escaping (T1, T2, T3) -> R) -> (T1) -> (T2) -> (T3) -> R {
  7. return { t1 in { t2 in { t3 in f(t1, t2, t3) } } }
  8. }
  9. class func curry<T1, T2, T3, T4, R>(_ f: @escaping (T1, T2, T3, T4) -> R) -> (T1) -> (T2) -> (T3) -> (T4) -> R {
  10. return { t1 in { t2 in { t3 in { t4 in f(t1, t2, t3, t4) } } } }
  11. }
  12. class func curry<T1, T2, T3, T4, T5, R>(_ f: @escaping (T1, T2, T3, T4, T5) -> R) -> (T1) -> (T2) -> (T3) -> (T4) -> (T5) -> R {
  13. return { t1 in { t2 in { t3 in { t4 in { t5 in f(t1, t2, t3, t4, t5) } } } } }
  14. }
  15. class func curry<T1, T2, T3, T4, T5, T6, R>(_ f: @escaping (T1, T2, T3, T4, T5, T6) -> R) -> (T1) -> (T2) -> (T3) -> (T4) -> (T5) -> (T6) -> R {
  16. return { t1 in { t2 in { t3 in { t4 in { t5 in { t6 in f(t1, t2, t3, t4, t5, t6) } } } } } }
  17. }
  18. class func curry<T1, T2, T3, T4, T5, T6, T7, R>(_ f: @escaping (T1, T2, T3, T4, T5, T6, T7) -> R) -> (T1) -> (T2) -> (T3) -> (T4) -> (T5) -> (T6) -> (T7) -> R {
  19. return { t1 in { t2 in { t3 in { t4 in { t5 in { t6 in { t7 in f(t1, t2, t3, t4, t5, t6, t7) } } } } } } }
  20. }
  21. class func curry<T1, T2, T3, T4, T5, T6, T7, T8, R>(_ f: @escaping (T1, T2, T3, T4, T5, T6, T7, T8) -> R) -> (T1) -> (T2) -> (T3) -> (T4) -> (T5) -> (T6) -> (T7) -> (T8) -> R {
  22. return { t1 in { t2 in { t3 in { t4 in { t5 in { t6 in { t7 in { t8 in f(t1, t2, t3, t4, t5, t6, t7, t8) } } } } } } } }
  23. }
  24. class func curry<T1, T2, T3, T4, T5, T6, T7, T8, T9, R>(_ f: @escaping (T1, T2, T3, T4, T5, T6, T7, T8, T9) -> R) -> (T1) -> (T2) -> (T3) -> (T4) -> (T5) -> (T6) -> (T7) -> (T8) -> (T9) -> R {
  25. return { t1 in { t2 in { t3 in { t4 in { t5 in { t6 in { t7 in { t8 in { t9 in f(t1, t2, t3, t4, t5, t6, t7, t8, t9) } } } } } } } } }
  26. }
  27. class func curry<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, R>(_ f: @escaping (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> R) -> (T1) -> (T2) -> (T3) -> (T4) -> (T5) -> (T6) -> (T7) -> (T8) -> (T9) -> (T10) -> R {
  28. return { t1 in { t2 in { t3 in { t4 in { t5 in { t6 in { t7 in { t8 in { t9 in { t10 in f(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10) } } } } } } } } } }
  29. }
  30. }