Mit einer polymorphen Funktion ein Objekt aus Options extrahieren

In der Dokumentation zu Shapeless wird erläutert, wie mit polymorphen Funktionen eine Funktion erstellt wird, mit der Objekte in einer Art Container einer anderen zugeordnet werde

Ich habe eine Liste mit Optionen

val options = Some(1) :: Some("A") :: Some(3.5) :: HNil

Ich möchte eine polymorphe Funktion, die den Inhalt jeder der Optionen extrahieren kann.

// This is incorrect:
object uuu extends (Option ~> Any) {
  def apply[T](l:Option[T]):T = {
    l.get
  }
}

Wenn diese Funktion korrekt ist, möchte ich folgendes Verhalten:

options.map(uuu) // I want: 1 :: "A" :: 3.5 :: HNil

Wie kann ich das korrigieren, damit meine polymorphe Funktion tatsächlich funktioniert?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage