Ich baue eine generische Funktion, die eine HList
der Form F[T1] :: ... :: F[Tn] :: HNil
übernimmt, diese in eine F[T1 :: ... :: Tn :: HNil]
umwandelt und diese dann an einen übergebenen Block übergeben muss Damit ich arbeiten kann, muss ich den HList-Typ in F[_]
extrahieren. Ich habe unter Shapeless etwas <hlistconstraints
... aber das kann nur verwendet werden, um zu verifizieren, dass die übergebene hlist tatsächlich nur aus F[_]
besteht; Es scheint jedoch keine Möglichkeit zu geben, das _
-Bit sozusagen zu einer eigenen Liste zu extrahieren.
Wo sollte ich nach etwas suchen, um den Job zu machen? Oder sollte ich einfach nicht erwarten, etwas aus der Box zu finden und stattdessen die Typberechnung selbst zu erstellen?
Offenlegung: Diese Frage ist ein Hilfsmittel für Generisch transform / fold / map über tuple / hlist mit einigen F [_] , ist aber meiner Meinung nach mindestens so nützlich wie eine eigenständige Frage.
Sieht so aus als würde Sequencer dies bereits tun:
%Vor%... aber ich bin momentan nicht in der Lage, mir einen Weg zu überlegen, wie ich das schöner machen kann
TC
muss Option
sein. Hinweis: Ich denke, dass dies als Antwort nützlich ist, aber ich akzeptiere es nicht - in der Hoffnung, dass jemand eine generischere und nettere Lösung finden wird.
Tags und Links scala shapeless type-level-computation