Depending on what you exactly want to do, you can either use substitute(.) or deparse(substitute(.))
library(dplyr)
variable_name <- function(object_name, folder = "temp") {
# return object_name
object_name
}
x <- mtcars %>% substitute(.)
x %>% class()
#> [1] "name"
x
#> mtcars
y <- mtcars %>% variable_name(object_name = deparse(substitute(.)))
y %>% class()
#> [1] "character"
y
#> [1] "mtcars"
Created on 2021-03-20 by the reprex package (v1.0.0)
Just in case you want to see an example, I created a show_summaries() function where I use something similar
# Examples usage show_summaries -------------------------------------------
# mpg %>% show_summaries()
# ## call function w/ providing description for section titles
# mpg %>% show_summaries(description = "mpg tidyverse dataset")
#
# ## for description, determine name of input object
# mpg %>% show_summaries(description = substitute(.))
#
# ## same, but now for a list object
# ability.cov %>% show_summaries(substitute(.))
# ## use `deparse()` to extract the name of a list within a list
# ability.cov$cov %>% show_summaries(description = deparse(substitute(.)))