Extract function name or namespaced of a call

call_name(call)

call_ns(call)

Arguments

call

Can be a call or a quosure that wraps a call.

Value

A string with the function name, or NULL if the function is anonymous.

Life cycle

In rlang 0.2.0, lang_name() was soft-deprecated and renamed to call_name(). See lifecycle section in call2() for more about this change.

See also

Examples

# Extract the function name from quoted calls: call_name(quote(foo(bar)))
#> [1] "foo"
call_name(quo(foo(bar)))
#> [1] "foo"
# Namespaced calls are correctly handled: call_name(~base::matrix(baz))
#> [1] "matrix"
# Anonymous and subsetted functions return NULL: call_name(quote(foo$bar()))
#> NULL
call_name(quote(foo[[bar]]()))
#> NULL
call_name(quote(foo()()))
#> NULL
# Extract namespace of a call with call_ns(): call_ns(quote(base::bar()))
#> [1] "base"
# If not namespaced, call_ns() returns NULL: call_ns(quote(bar()))
#> NULL