This help topic is for R version 1.5.0. For the current version of R, try https://stat.ethz.ch/R-manual/R-patched/library/base/html/environment.html
environment {base}R Documentation

Environment Access

Description

Get, set, test for and create environments.

Usage

environment(fun = NULL)
environment(fun) <- value
is.environment(obj)
.GlobalEnv
globalenv()
new.env(hash=FALSE, parent=parent.frame())
parent.env(env)
parent.env(env) <- value

Arguments

fun

a function, a formula, or NULL, which is the default.

value

an environment to associate with the function

obj

an arbitrary R object.

hash

a logical, if TRUE the environment will be hashed

parent

an environment to be used as the parent of the environment created.

env

an environment

Details

The global environment .GlobalEnv is the first item on the search path, more often known as the user's workspace. It can also be accessed by globalenv().

The variable .BaseNamespaceEnv is part of some experimental support for name space management.

The assignment function parent.env<- is extremely dangerous as it can be used to destructively change environments in ways that violate assumptions made by the internal C code. It may be removed in the near future.

Value

If fun is a function or a formula then environment(fun) returns the environment associated with that function or formula. If fun is NULL then the current evaluation environment is returned.

The assignment form sets the environment of the function or formula fun to the value given.

is.environment(obj) returns TRUE iff obj is an environment.

new.env returns a new (empty) environment enclosed in the parent's environment, by default.

parent.env returns the parent environment of its argument.

parent.env<- sets the parent environment of its first argument.

See Also

The envir argument of eval.

Examples

##-- all three give the same:
environment()
environment(environment)
.GlobalEnv

ls(envir=environment(approxfun(1:2,1:2, method="const")))

is.environment(.GlobalEnv)# TRUE

e1 <- new.env(TRUE, NULL)
e2 <- new.env(FALSE, NULL)
assign("a", 3, env=e2)
parent.env(e1) <- e2
get("a", env=e1)


[Package base version 1.5.0 ]