Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure 如何从lein repl中删除函数?_Clojure_Leiningen_Vimclojure - Fatal编程技术网

Clojure 如何从lein repl中删除函数?

Clojure 如何从lein repl中删除函数?,clojure,leiningen,vimclojure,Clojure,Leiningen,Vimclojure,在lein REPL会话期间,我可以定义许多函数。但是,有时我希望会话“忘记”它们——例如,当我执行(运行所有测试)时,这会突出显示我不再需要的测试的失败。有没有一种方法可以在不重新启动的情况下从会话中删除函数或清除它?使用Clojure命名空间页面上描述的ns unmap 注意:我正在通过vim fireplace插件连接到lein repl,并使用“cpR”命令运行测试。这似乎就完成了。是否有类似于“取消映射”所有函数的函数?您可以使用ns map获得所有函数的列表。然后取消它们的映射。 (

在lein REPL会话期间,我可以定义许多函数。但是,有时我希望会话“忘记”它们——例如,当我执行(运行所有测试)时,这会突出显示我不再需要的测试的失败。有没有一种方法可以在不重新启动的情况下从会话中删除函数或清除它?

使用Clojure命名空间页面上描述的
ns unmap


注意:我正在通过vim fireplace插件连接到lein repl,并使用“cpR”命令运行测试。这似乎就完成了。是否有类似于“取消映射”所有函数的函数?您可以使用ns map获得所有函数的列表。然后取消它们的映射。
(defn foo [x] (inc x))                    
#'user/foo     
user> (foo 3)       
4                                                                                
user> (ns-unmap *ns* 'foo)     
nil
user> (foo 3)
CompilerException java.lang.RuntimeException: Unable to resolve symbol: foo in this context, compiling:(NO_SOURCE_PATH:1:1)