Temporarily change contents of an existing Makevars
file.
Usage
with_makevars(
new,
code,
path = makevars_user(),
assignment = c("=", ":=", "?=", "+=")
)
local_makevars(
.new = list(),
...,
.path = makevars_user(),
.assignment = c("=", ":=", "?=", "+="),
.local_envir = parent.frame()
)
Arguments
- new, .new
[named character]
New variables and their values- code
[any]
Code to execute in the temporary environment- path, .path
[character(1)]
location of existingMakevars
file to modify.- assignment, .assignment
[character(1)]
assignment type to use.- ...
Additional new variables and their values.
- .local_envir
[environment]
The environment to use for scoping.
Details
If no Makevars
file exists or the fields in new
do
not exist in the existing Makevars
file then the fields are added to
the new file. Existing fields which are not included in new
are
appended unchanged. Fields which exist in Makevars
and in new
are modified to use the value in new
.
See also
withr
for examples