Clojure-Namespace: Methode, um definierte Objekte zu sehen?

7

Gibt es eine Möglichkeit zu sehen, was bereits in einer Clojure-Sitzung definiert wurde (entspricht dem Aufruf von ls ())? Nehmen wir an, ich erstelle ein paar Objekte:

%Vor%

Gibt es einen Befehl, der ausgeführt werden kann, um mir zu zeigen, dass diese jetzt im Benutzernamespace vorhanden sind?

    
Shane 06.01.2010, 11:46
quelle

2 Antworten

18

Ich mache alle Zuweisungen im User Namespace.

%Vor%

;; So zeigen Sie alle öffentlichen internen Zuordnungen im Benutzernamespace an.

%Vor%

Definieren wir nun eine Funktion, die nicht öffentlich ist

%Vor%

Wenn Sie die Funktion ns-publics aufrufen. Es wird keine Foobar-Funktion in den Zuordnungen angezeigt.

%Vor%

Um die internen Zuordnungen für den Namespace anzuzeigen. Verwenden Sie (Y-NAMESPACE Ihres ns-Praktikanten)

%Vor%     
aatifh 06.01.2010, 12:32
quelle
7

Vielleicht ns-publics ?

  

Gibt eine Zuordnung der öffentlichen internen Zuordnungen für den Namespace zurück.

oder ns-map ?

  

Gibt eine Zuordnung aller Zuordnungen für den Namespace zurück.

Wie ich es verstehe, gibt es keine "globale Umgebung", es gibt nur Namespaces. Natürlich ist das, was Sie gerade "in" sind, für praktische Zwecke wie eine "globale Umgebung".

    
Carl Smotricz 06.01.2010 11:58
quelle

Tags und Links