Я пытаюсь написать функцию, которая может быть использована в среде выполнения функции, которая является обратной операцией к списку, то есть, учитывая именованный список, она возвращает именованные элементы как именованные объекты. Вот что у меня есть:
library(tidyverse)
unfold <- function(X){list2env(X, envir = rlang::current_env())}
l. <- list(A = 1, B = 2)
tst_unlist <- function(X){
unfold(X)
out <- as.list(rlang::current_env())
out
}
tst_unlist(X = l.)
Возвращает:
$X
$X$A
[1] 1
$X$B
[1] 2
Другими словами, все, что есть в окружении, это X, содержащий список l.
.
Желаемый вывод:
$X
$X$A
[1] 1
$X$B
[1] 2
$A
[1] 1
$B
[1] 2
Другими словами, я хочу, чтобы функция раскрытия присваивала назначенные элементы списка l.
в текущей (исполнительной) среде tst_unlist.