add is_internal
Issue #4
new
Something like this (not tested):
is_internal <- function(x, .xname = get_name_in_parent(x))
{
if(!(ok <- is_function(x)))
{
return(ok)
}
if(ok <- is.primitive(x))
{
return(false("%s is a primitive function.", .xname))
}
ok <- body(x) %>%
as.list() %>%
rapply(as.list) %>%
vapply(
function(x)
{
is.name(x) && x == ".Internal"
},
logical(1)
) %>%
any()
if(!ok)
{
return(false("%s is non-internal function.", .xname))
}
TRUE
}