如果我有一个打印到的功能,(current-output-port)有没有一种简单的方法来运行该函数而不打印到输出端口?
以前,我用作/dev/null输出目标:
(with-output-to-file "/dev/null" #:exists 'append
(lambda () (displayln "hello world")))
Run Code Online (Sandbox Code Playgroud)
这很容易,但取决于平台.我有时会忘记#:exists国旗.
是! 使用open-output-nowhere从球拍/端口.
(parameterize ([current-output-port (open-output-nowhere)])
(displayln "hello world"))
Run Code Online (Sandbox Code Playgroud)
如果要隐藏错误输出,请current-error-port改为覆盖/也.