클로우 저에 의해 다소 혼란 스럽습니다 instance?
기능. 하나의 논쟁을하는 것은 상당히 행복해 보입니다. 따라서clojure 인스턴스? 하나의 인수
(instance? String)
이 제대로 작동하지만 항상 false를 반환합니다.
여기에 뭔가가 있습니까? 저는 이틀에 걸쳐이 작업을 두 번했는데 두 번 모두 디버깅하는 데 오랜 시간이 걸렸습니다 (예, 한 번 실수로 여겨 질 수있는 실수는 있지만, 두 번은 부주의라고 생각합니다).
왜 아티스트 오류가 발생하지 않습니까?
나중에 추가 할 내용 : Clojure 1.6부터이 문제가 해결되었습니다! nil
(or false
)이 x
매개 변수의 기본값으로 간주,
(def
^{:arglists '([^Class c x])
:doc "Evaluates x and tests if it is an instance of the class
c. Returns true or false"
:added "1.0"}
instance? (fn instance? [^Class c x] (. c (isInstance x))))
는 후드처럼 보이는 : 당신이 instance?
code 보면
http://dev.clojure.org/jira/browse/CLJ-1171
인스턴스를 호출 할 수도 있습니다. 2 개 이상의 인수가있는 :'(인스턴스? 문자열 "a"0)'->'true' – Alex
'(인스턴스?문자열 "a"0)'ArityException 오류가 발생합니다. – amirteymuri