env.Rd
Creates a new environment, evaluates an expression therein, and returns the environment.
env(..., hash=FALSE, parent=parent.frame(), size=29L)
Arguments passed to evalq
(), particularly a
expression
to be evaluated inside the newly created environment
.
Arguments passed to new.env
().
Returns an environment
.
[1] R-devel thread 'Create an environment and assign objects to it in
one go?' on March 9-10, 2011.
x <- list();
x$case1 <- env({
# Cut'n'pasted from elsewhere
a <- 1;
b <- 2;
});
x$case2 <- env({
# Cut'n'pasted from elsewhere
foo <- function(x) x^2;
a <- foo(2);
b <- 1;
rm(foo); # Not needed anymore
});
# Turn into a list of lists
x <- lapply(x, FUN=as.list);
str(x);
#> List of 2
#> $ case1:List of 2
#> ..$ b: num 2
#> ..$ a: num 1
#> $ case2:List of 2
#> ..$ b: num 1
#> ..$ a: num 4