| parse {base} | R Documentation |
Parse Expressions
Description
parse returns the parsed but unevaluated expressions in a
list.
Usage
parse(file = "", n = NULL, text = NULL, prompt = "?", srcfile,
encoding = "unknown")
Arguments
file |
a connection, or a character string giving the name of a
file or a URL to read the expressions from.
If |
n |
integer (or coerced to integer). The maximum number of
expressions to parse. If |
text |
character vector. The text to parse. Elements are treated as if they were lines of a file. Other R objects will be coerced to character (without method dispatch) if possible. |
prompt |
the prompt to print when parsing from the keyboard.
|
srcfile |
|
encoding |
encoding to be assumed for input strings. It is used to mark character strings as known to be in Latin-1 or UTF-8: it is not used to re-encode the input. |
Details
If text has length greater than zero (after coercion) it is used in
preference to file.
All versions of R accept input from a connection with end of line marked by LF (as used on Unix), CRLF (as used on DOS/Windows) or CR (as used on classic MacOS). The final line can be incomplete, that is missing the final EOL marker.
See source for the limits on the size of functions
that can be parsed (by default). There is also a limit of 8192 bytes
on the size of strings which can be parsed.
When input is taken from the console, n = NULL is equivalent to
n = 1, and n < 0 will read until an EOF character is read.
The default for srcfile is set as follows. If
options("keep.source") is FALSE, srcfile
defaults to NULL. Otherwise, if text is used,
srcfile will be set to a srcfilecopy containing
the text. If a character string is used for file, a
srcfile object referring to that file will be used.
Value
An object of type "expression", with up to n
elements if specified as a non-negative integer.
When srcfile is non-NULL, a "srcref" attribute
will be attached to the result containing a list of srcref
records corresponding to each element.
A syntax error (including an incomplete expression) will throw an error.
Character strings in the result will have a declared encoding if
encoding is "latin1" or "UTF-8".
References
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth \& Brooks/Cole.
See Also
scan, source, eval,
deparse.
Examples
cat("x <- c(1,4)\n x ^ 3 -10 ; outer(1:7,5:9)\n", file="xyz.Rdmped")
# parse 3 statements from the file "xyz.Rdmped"
parse(file = "xyz.Rdmped", n = 3)
unlink("xyz.Rdmped")