For developers only: get the environment where a
target runs its command. Designed to be called
while the target is running. The environment
inherits from tar_option_get("envir").
Usage
tar_envir(default = parent.frame())Arguments
- default
Environment, value to return if
tar_envir()is called on its own outside atargetspipeline. Having a default lets users run things withouttar_make(), which helps peel back layers of code and troubleshoot bugs.
Value
If called from a running target, tar_envir() returns
the environment where the target runs its command.
If called outside a pipeline, the return value is
whatever the user supplies to default
(which defaults to parent.frame()).
Details
Most users should not use tar_envir() because accidental
modifications to parent.env(tar_envir()) could break the pipeline.
tar_envir() only exists in order to support third-party interface
packages, and even then the returned environment is not modified.
Examples
tar_envir()
#> <environment: 0x5631d8c55e90>
tar_envir(default = new.env(parent = emptyenv()))
#> <environment: 0x5631d5f7f460>
if (identical(Sys.getenv("TAR_EXAMPLES"), "true")) { # for CRAN
tar_dir({ # tar_dir() runs code from a temp dir for CRAN.
tar_script(tar_target(x, tar_envir(default = parent.frame())))
tar_make(x)
tar_read(x)
})
}