Aliases: is_function is_closure is_primitive is_primitive_eager is_primitive_lazy
Keywords:
### ** Examples # Primitive functions are not closures: is_closure(base::c)
[1] FALSE
is_primitive(base::c)
[1] TRUE
# On the other hand, internal functions are wrapped in a closure # and appear as such from the R side: is_closure(base::eval)
[1] TRUE
# Both closures and primitives are functions: is_function(base::c)
[1] TRUE
is_function(base::eval)
[1] TRUE
# Many primitive functions evaluate arguments eagerly: is_primitive_eager(base::c)
[1] TRUE
is_primitive_eager(base::list)
[1] TRUE
is_primitive_eager(base::`+`)
[1] TRUE
# However, primitives that operate on expressions, like quote() or # substitute(), are lazy: is_primitive_lazy(base::quote)
[1] TRUE
is_primitive_lazy(base::substitute)
[1] TRUE