Clojure - 名稱空間



名稱空間在 Clojure 中用於將類區分到不同的邏輯空間,就像在 Java 中一樣。考慮以下語句。

(:require [clojure.set :as set])

在上面的語句中,‘clojure.set’是一個名稱空間,它包含程式中要使用的各種類和方法。例如,上述名稱空間包含一個名為 map-invert 的函式,用於反轉鍵值對映。除非我們明確告訴程式包含此名稱空間,否則我們無法使用此函式。

讓我們看看名稱空間可用的不同方法。

序號 方法和描述
1 *ns*

用於檢視當前名稱空間。

2 ns

用於建立一個新的名稱空間並將其與正在執行的程式關聯。

3 alias

在當前名稱空間中新增對另一個名稱空間的別名。引數是兩個符號:要使用的別名和目標名稱空間的符號名稱。

4 all-ns

返回所有名稱空間的列表。

5 find-ns

查詢並返回特定名稱空間。

6 ns-name

返回特定名稱空間的名稱。

7 ns-aliases

返回與任何名稱空間關聯的別名。

8 ns-map

返回名稱空間的所有對映的對映。

9 un-alias

返回一個對映,該對映只包含map中鍵在keys中的條目。

廣告