如何检测rlang中的空状态?

Hon*_*Ooi 7 r tidyverse rlang

f <- function(x) enquo(x)

e <- f()
#<quosure: empty>
#~
Run Code Online (Sandbox Code Playgroud)

这些都不起作用:

> is_empty(e)
[1] FALSE
> is_missing(e)
[1] FALSE
> is_false(e)
[1] FALSE
> is_quosure(e)
[1] TRUE
Run Code Online (Sandbox Code Playgroud)

Lio*_*nry 10

您可以使用quo_is_missing(x),这是别名is_missing(quo_get_expr(x)).

  • 我在这上面浪费了相当多的时间,直到我注意到/意识到 `quo_is_missing(x)` 需要 *after* `enquo(x)` 运行。之后,效果很好! (2认同)