현재 네임 스페이스에서 기호가 해결 될 수 있는지 확인하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/1412551

  •  06-07-2019
  •  | 
  •  

문제

현재 네임 스페이스에서 기호가 해결 될 수 있는지 확인하고 싶습니다. 이 작업을 수행하는 정식 방법은 무엇입니까?

도움이 되었습니까?

해결책

API 문서를 한 번 더 선별 한 후에는 적절한 기능이 무엇인지 우연히 발견했습니다.

; Returns the var or Class to which the symbol
; will be resolved in the current namespace, else nil.
  (resolve 'foo)

; see also:
  (ns-resolve *a-namespace* 'foo)

다른 팁

보세요 이 페이지. 예를 들어

(ns-map *ns*)

현재 네임 스페이스의 바인딩 맵을 제공합니다. 이 맵을 검사하여 기호가 맵의 핵심인지 결정할 수 있습니다.

(defn resolvable? [sym] 
  (contains? (ns-map *ns*) sym))

나는 이것이인지 모른다 표준 방법.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top