필수 인수 x 및 선택적 인수 opt1 또는 키워드 인수 opt2를 사용하는 함수를 만들려고합니다.Clojure 키워드 및 선택적 인수 문제
는 지금은
(defn foo x & [opt1 {:keys [opt2]}]
...
해야하지만, 위의 서명은 x와 OPT1 모두가있는 경우
(foo 'x 'opt1 {:opt2 'opt2})
하지이
(foo 'x {:opt2 'opt2})
처럼 나 한테 키워드 인수 OPT2에 건네 줄 수가 있습니다
필수 인수 X와 opt1 또는 opt2, whe 중 하나를 사용하는 함수를 만들도록 도와주십시오. re opt2는 키워드 인수입니다.
감사합니다.
편집 : 나는 다른 매크로에도 똑같이하고 싶습니다. 그래서 나는 아직도 defmacro를 사용할 필요가있다.
이 '[clojure.contrib.def] defnk'에서 사용을 고려한다 (http://richhickey.github.com/clojure-contrib/def-api.html) 대신의 명시 destructuring. – ffriend
'defnk'는 1.2에서보다 일관된 내장 기능을 위해 더 이상 사용되지 않습니다. – kotarak