Dynamische Methodenaufrufe in einem Clojure-Makro?
Ich versuche, ein Makro zu schreiben, das Java-Setter-Methoden basierend auf den Argumenten aufruft, die ihm gegeben werden.
Also zum Beispiel:
(my-macro login-as-fred {"Username" "fred" "Password" "wilma"})
könnte folgendermaßen erweitert werden:
(doto (new MyClass)
(.setUsername "fred")
(.setPassword "wilma"))
Wie würden Sie dies angehen?
Insbesondere habe ich Probleme, die beste Methode zum Erstellen des Setter-Methodennamens zu finden und ihn vom Makro als Symbol interpretieren zu lassen.