Advertisement
Guest User

Untitled

a guest
Sep 18th, 2014
290
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 9.15 KB | None | 0 0
  1. object TupleImplicits {
  2.   implicit class RichTuple2[F,T1,T2](tup: (F => T1,F => T2)) {
  3.     def mapList(vs: List[F]) = {
  4.       val List(v1,v2) = vs
  5.       (tup._1(v1),tup._2(v2))
  6.     }
  7.   }
  8.  
  9.  
  10.   implicit class RichTuple3[F,T1,T2,T3](tup: (F => T1,F => T2,F => T3)) {
  11.     def mapList(vs: List[F]) = {
  12.       val List(v1,v2,v3) = vs
  13.       (tup._1(v1),tup._2(v2),tup._3(v3))
  14.     }
  15.   }
  16.  
  17.  
  18.   implicit class RichTuple4[F,T1,T2,T3,T4](tup: (F => T1,F => T2,F => T3,F => T4)) {
  19.     def mapList(vs: List[F]) = {
  20.       val List(v1,v2,v3,v4) = vs
  21.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4))
  22.     }
  23.   }
  24.  
  25.  
  26.   implicit class RichTuple5[F,T1,T2,T3,T4,T5](tup: (F => T1,F => T2,F => T3,F => T4,F => T5)) {
  27.     def mapList(vs: List[F]) = {
  28.       val List(v1,v2,v3,v4,v5) = vs
  29.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5))
  30.     }
  31.   }
  32.  
  33.  
  34.   implicit class RichTuple6[F,T1,T2,T3,T4,T5,T6](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6)) {
  35.     def mapList(vs: List[F]) = {
  36.       val List(v1,v2,v3,v4,v5,v6) = vs
  37.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6))
  38.     }
  39.   }
  40.  
  41.  
  42.   implicit class RichTuple7[F,T1,T2,T3,T4,T5,T6,T7](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7)) {
  43.     def mapList(vs: List[F]) = {
  44.       val List(v1,v2,v3,v4,v5,v6,v7) = vs
  45.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7))
  46.     }
  47.   }
  48.  
  49.  
  50.   implicit class RichTuple8[F,T1,T2,T3,T4,T5,T6,T7,T8](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8)) {
  51.     def mapList(vs: List[F]) = {
  52.       val List(v1,v2,v3,v4,v5,v6,v7,v8) = vs
  53.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8))
  54.     }
  55.   }
  56.  
  57.  
  58.   implicit class RichTuple9[F,T1,T2,T3,T4,T5,T6,T7,T8,T9](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9)) {
  59.     def mapList(vs: List[F]) = {
  60.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9) = vs
  61.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9))
  62.     }
  63.   }
  64.  
  65.  
  66.   implicit class RichTuple10[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10)) {
  67.     def mapList(vs: List[F]) = {
  68.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10) = vs
  69.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10))
  70.     }
  71.   }
  72.  
  73.  
  74.   implicit class RichTuple11[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11)) {
  75.     def mapList(vs: List[F]) = {
  76.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11) = vs
  77.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11))
  78.     }
  79.   }
  80.  
  81.  
  82.   implicit class RichTuple12[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12)) {
  83.     def mapList(vs: List[F]) = {
  84.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12) = vs
  85.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12))
  86.     }
  87.   }
  88.  
  89.  
  90.   implicit class RichTuple13[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13)) {
  91.     def mapList(vs: List[F]) = {
  92.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13) = vs
  93.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13))
  94.     }
  95.   }
  96.  
  97.  
  98.   implicit class RichTuple14[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14)) {
  99.     def mapList(vs: List[F]) = {
  100.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14) = vs
  101.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14))
  102.     }
  103.   }
  104.  
  105.  
  106.   implicit class RichTuple15[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14,F => T15)) {
  107.     def mapList(vs: List[F]) = {
  108.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15) = vs
  109.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14),tup._15(v15))
  110.     }
  111.   }
  112.  
  113.  
  114.   implicit class RichTuple16[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14,F => T15,F => T16)) {
  115.     def mapList(vs: List[F]) = {
  116.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16) = vs
  117.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14),tup._15(v15),tup._16(v16))
  118.     }
  119.   }
  120.  
  121.  
  122.   implicit class RichTuple17[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14,F => T15,F => T16,F => T17)) {
  123.     def mapList(vs: List[F]) = {
  124.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17) = vs
  125.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14),tup._15(v15),tup._16(v16),tup._17(v17))
  126.     }
  127.   }
  128.  
  129.  
  130.   implicit class RichTuple18[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14,F => T15,F => T16,F => T17,F => T18)) {
  131.     def mapList(vs: List[F]) = {
  132.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18) = vs
  133.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14),tup._15(v15),tup._16(v16),tup._17(v17),tup._18(v18))
  134.     }
  135.   }
  136.  
  137.  
  138.   implicit class RichTuple19[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14,F => T15,F => T16,F => T17,F => T18,F => T19)) {
  139.     def mapList(vs: List[F]) = {
  140.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19) = vs
  141.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14),tup._15(v15),tup._16(v16),tup._17(v17),tup._18(v18),tup._19(v19))
  142.     }
  143.   }
  144.  
  145.  
  146.   implicit class RichTuple20[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14,F => T15,F => T16,F => T17,F => T18,F => T19,F => T20)) {
  147.     def mapList(vs: List[F]) = {
  148.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20) = vs
  149.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14),tup._15(v15),tup._16(v16),tup._17(v17),tup._18(v18),tup._19(v19),tup._20(v20))
  150.     }
  151.   }
  152.  
  153.  
  154.   implicit class RichTuple21[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14,F => T15,F => T16,F => T17,F => T18,F => T19,F => T20,F => T21)) {
  155.     def mapList(vs: List[F]) = {
  156.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21) = vs
  157.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14),tup._15(v15),tup._16(v16),tup._17(v17),tup._18(v18),tup._19(v19),tup._20(v20),tup._21(v21))
  158.     }
  159.   }
  160.  
  161.  
  162.   implicit class RichTuple22[F,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22](tup: (F => T1,F => T2,F => T3,F => T4,F => T5,F => T6,F => T7,F => T8,F => T9,F => T10,F => T11,F => T12,F => T13,F => T14,F => T15,F => T16,F => T17,F => T18,F => T19,F => T20,F => T21,F => T22)) {
  163.     def mapList(vs: List[F]) = {
  164.       val List(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22) = vs
  165.       (tup._1(v1),tup._2(v2),tup._3(v3),tup._4(v4),tup._5(v5),tup._6(v6),tup._7(v7),tup._8(v8),tup._9(v9),tup._10(v10),tup._11(v11),tup._12(v12),tup._13(v13),tup._14(v14),tup._15(v15),tup._16(v16),tup._17(v17),tup._18(v18),tup._19(v19),tup._20(v20),tup._21(v21),tup._22(v22))
  166.     }
  167.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement