Obtendo elementos de uma HList
Eu brinquei com o HList e os seguintes trabalhos, conforme o esperado:
val hl = 1 :: "foo" :: HNil
val i: Int = hl(_0)
val s: String = hl(_1)
No entanto, não consigo trabalhar com o seguinte código (vamos supor por um momento o acesso aleatório às listas é uma idéia inteligente ;-)):
class Container(hl: HList) {
def get(n: Nat) = hl(n)
}
val container = new Container(1 :: "foo" :: HNil)
val i: Int = container.get(_0)
val s: String = container.get(_1)
eu gostaria de terget
retornar umInt
eString
de acordo com o seu parâmetro. Presumo que, se possível, eu tenho que usarAux
ouat
mas não tenho certeza de como fazer isso.