Clojure - Espaces de noms

Namespacesdans Clojure sont utilisés pour différencier les classes en espaces logiques séparés, tout comme en Java. Considérez la déclaration suivante.

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

Dans l'instruction ci-dessus, 'clojure.set' est un espace de noms qui contient diverses classes et méthodes à utiliser dans le programme. Par exemple, l'espace de noms ci-dessus contient la fonction appelée map-invert, qui est utilisée pour inverser une carte de valeurs-clés. Nous ne pouvons pas utiliser cette fonction à moins que nous disions explicitement à notre programme d'inclure cet espace de noms.

Regardons les différentes méthodes disponibles pour les espaces de noms.

N ° Sr. Méthodes et description
1 * ns *

Ceci est utilisé pour regarder votre espace de noms actuel.

2 ns

Ceci est utilisé pour créer un nouvel espace de noms et l'associer au programme en cours d'exécution.

3 alias

Ajoutez un alias dans l'espace de noms actuel à un autre espace de noms. Les arguments sont deux symboles: l'alias à utiliser et le nom symbolique de l'espace de noms cible.

4 tout-ns

Renvoie une liste de tous les espaces de noms.

5 trouver-ns

Recherche et renvoie un espace de noms particulier.

6 nom-ns

Renvoie le nom d'un espace de noms particulier.

sept ns-alias

Renvoie les alias associés à tous les espaces de noms.

8 ns-map

Renvoie une carte de tous les mappages pour l'espace de noms.

9 un-alias

Renvoie une carte contenant uniquement les entrées de la carte dont la clé est dans les clés.