SHList is HList for Swift by statically meta-programming.
let list = HList("Hello", 42, true)
list.head // => "Hello"
list.tail.head // => 42
list.tail.tail.head // => true
list.count // => 3
list.tail.count // => 2
list.tail.tail.count // => 2
list.asArray() // => ["Hello", 42, true] as [Any]
func f(a1: String, a2: Int, a3: Bool) -> String {
"\(a1),\(a2),\(a3)"
}
list.apply(f) // => "Hello,42,true"
Only up to 20 elements are supported.
Yusuke Hosonuma / tobi462@gmail.com / @tobi462
SHList is available under the MIT license. See the LICENSE file for more info.