View source: R/tar_cue_force.R
tar_cue_force | R Documentation |
tar_cue_force()
creates a cue object to
force a target to run if an arbitrary condition evaluates to TRUE
.
Supply the returned cue object to the cue
argument of
targets::tar_target()
or similar.
tar_cue_force(
condition,
command = TRUE,
depend = TRUE,
format = TRUE,
repository = TRUE,
iteration = TRUE,
file = TRUE
)
condition |
Logical vector evaluated locally when the target is
defined. If any element of |
command |
Logical, whether to rerun the target if command changed since last time. |
depend |
Logical, whether to rerun the target if the value of one of the dependencies changed. |
format |
Logical, whether to rerun the target if the user-specified
storage format changed. The storage format is user-specified through
|
repository |
Logical, whether to rerun the target if the user-specified
storage repository changed. The storage repository is user-specified
through |
iteration |
Logical, whether to rerun the target if the user-specified
iteration method changed. The iteration method is user-specified through
|
file |
Logical, whether to rerun the target if the file(s) with the return value changed or at least one is missing. |
tar_cue_force()
and tar_force()
operate differently.
The former defines a cue object based on an eagerly evaluated
condition, and tar_force()
puts the condition in a special
upstream target that always runs. Unlike tar_cue_force()
,
the condition in tar_force()
can depend on upstream targets,
but the drawback is that targets defined with tar_force()
will always show up as outdated in functions like tar_outdated()
and tar_visnetwork()
even though tar_make()
may still
skip the main target if the condition is not met.
A cue object. See the "Cue objects" section for background.
A cue object is an object generated by targets::tar_cue()
,
tarchetypes::tar_cue_force()
, or similar. It is
a collection of decision rules that decide when a target
is invalidated/outdated (e.g. when tar_make()
or similar
reruns the target). You can supply these cue objects to the
tar_target()
function or similar. For example,
tar_target(x, run_stuff(), cue = tar_cue(mode = "always"))
is a target that always calls run_stuff()
during tar_make()
and always shows as invalidated/outdated in tar_outdated()
,
tar_visnetwork()
, and similar functions.
Other cues:
tar_age()
,
tar_cue_age()
,
tar_cue_skip()
if (identical(Sys.getenv("TAR_LONG_EXAMPLES"), "true")) {
targets::tar_dir({ # tar_dir() runs code from a temporary directory.
targets::tar_script({
library(tarchetypes)
list(
targets::tar_target(
data,
data.frame(x = seq_len(26)),
cue = tarchetypes::tar_cue_force(1 > 0)
)
)
})
targets::tar_make()
targets::tar_make()
})
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.