parse                  package:base                  R Documentation

Parse Expressions

Description:

     'parse' returns the parsed but unevaluated expressions in a list.

Usage:

     parse(file = "", n = NULL, text = NULL, prompt = "?")

Arguments:

    file: a connection, or a character string giving the name of a file
          or a URL to read the expressions from. If 'file' is '""' and
          'text' is missing or 'NULL' then input is taken from the
          console.

       n: integer (or coerced to integer).  The maximum number of
          expressions to parse.  If 'n' is 'NULL' or negative or 'NA'
          the input is parsed in its entirety.

    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. 'NULL'
          means to use R's prompt, 'getOption("prompt")'.

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.

Value:

     An object of type '"expression"', with up to 'n' elements if
     specified as a non-negative integer.

     A syntax error (including an incomplete expression) will throw an
     error.

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")

