Functions to define stages and their constituent steps. The macros combine several steps and assign them to relevant stages. See dsl_get() for functions to access the storage for the stages and their steps.

get_stage() returns a TicStage object for a stage given by name. This function can be called directly in the tic.R configuration file, which is processed by dsl_load().

add_step() adds a step to a stage, see step_hello_world() and the links therein for available steps.

add_code_step() is a shortcut for add_step(step_run_code(...)).


add_step(stage, step)

add_code_step(stage, call = NULL, prepare_call = NULL)



The name for the stage.


A TicStage object as returned by get_stage().


An object of class TicStep, usually created by functions with the step_ prefix like step_hello_world().


An arbitrary R expression executed during the stage to which this step is added. The default is useful if you only pass prepare_call.


An optional arbitrary R expression executed during preparation.


#> Creating a clean tic stage configuration
#> See `?tic::dsl_get` for details
#> ── script ───────────────────────────────────────────────────────────── stage ── #> ℹ No steps defined
get_stage("script") %>% add_step(step_hello_world()) get_stage("script")
#> ── script ───────────────────────────────────────────────────────────── stage ── #> ▶ step_hello_world()
get_stage("script") %>% add_code_step(print("Hi!")) get_stage("script")
#> ── script ───────────────────────────────────────────────────────────── stage ── #> ▶ step_hello_world() #> ▶ step_run_code(print("Hi!"))