rcat.Rd
Evaluates an RSP string and outputs the generated string.
# S3 method for default
rcat(..., file=NULL, path=NULL, envir=parent.frame(), args="*", output="", buffered=TRUE,
append=FALSE, verbose=FALSE)
# S3 method for default
rsource(file, path=NULL, envir=parent.frame(), output="", buffered=FALSE, ...)
A character
string with RSP markup.
Alternatively, a file, a URL or a connection
from
with the strings are read.
If a file, the path
is prepended to the file, iff given.
The environment
in which the RSP string is
preprocessed and evaluated.
A named list
of arguments assigned to the environment
in which the RSP string is parsed and evaluated.
See cmdArgs
.
A connection
, or a pathname where to direct the output.
If ""
, the output is sent to the standard output.
If TRUE
, and output=""
, then the RSP output is
outputted as soon as possible, if possible.
Only applied if output
specifies a pathname.
If TRUE
, then the output is appended to the file, otherwise
the files content is overwritten.
See Verbose
.
Returns (invisibly) the outputted RspStringProduct
.
Using Rscript
and rcat()
, it is possible to process
an RSP string and output the result from the command line. For example,
Rscript -e "R.rsp::rcat('A random integer in [1,<%=K%>]: <%=sample(1:K, size=1)%>')" --args --K=50
parses and evaluates the RSP string and outputs the result to standard output. A CLI-friendly alternative to the above is:
Rscript -e R.rsp::rcat "A random integer in [1,<%=K%>]: <%=sample(1:K, size=1)%>" --args --K=50
The rsource(file, ...)
is a convenient wrapper
for rcat(file=file, ..., output="", buffered=FALSE)
.
As an analogue, rsource()
is to an RSP file what
source()
is to an R script file.
rcat("A random integer in [1,100]: <%=sample(1:100, size=1)%>\n")
#> A random integer in [1,100]: 45
# Passing arguments
rcat("A random integer in [1,<%=K%>]: <%=sample(1:K, size=1)%>\n", args=list(K=50))
#> A random integer in [1,50]: 23