Prepare a module (including mocks, tests and examples) for publication as a modulr gear.

prepare_gear(name = .Last.name, url = NULL, load = TRUE)

Arguments

name

A string (character vector of lenght one).

A module name can contain letters, figures and some special characters, namely _, -, and /. The latter is a namespace separator.

Names containing /mock/, /mocks/, /test/, /tests/, /example/, or /examples/ have a special meaning related to code testing and examples.

The name "modulr" corresponds to a special module and is therefore reserved.

url

A string (character vector of length one). The URL must use the HTTP(S) protocol.

load

A flag. Should an undefined module be implicitely loaded?

Value

A string (character vector of length one) containing a modulr gear R Markdown script.

Details

A modulr gear is an R Markdown script containing a module, its docstring info, and its special modules definitions, like mocks, tests, and examples, for instance. prepare_gear prepares such a Modulr Gear. If an url is given, the script will be completed accordingly (see example).

See also

define, release_gear_as_gist, info, and reset.

Examples

#> [2017-06-21T21:58:29 UTC] Resetting modulr state ... OK
define("foo", NULL, function() { #' # A `foo` module #' #' Description goes here. NULL })
#> [2017-06-21T21:58:29 UTC] Defining 'foo' ... OK
cat(prepare_gear("foo", url = "https://example.org/gears/foo"), sep = "\n")
#> # A `foo` module #> #> Description goes here. #> ## Installation #> ```{r} #> library(modulr) #> ``` #> ```r #> # Not run #> "foo" %imports% "https://example.org/gears/foo" #> #> # "foo" %digests% "73df91a01224f642" %imports% "https://example.org/gears/foo" #> ``` #> ## Definition #> #> ```{r definition} #> "foo" %provides% { #> #' # A `foo` module #> #' #> #' Description goes here. #> NULL #> } #> #> ``` #> #> #> --- #> Gear prepared with the R package [modulr](https://github.com/aclemen1/modulr) (v0.1.7.9186).