deparseOpts {base} | R Documentation

## Options for Expression Deparsing

### Description

Process the deparsing options for `deparse`, `dput` and `dump`.

### Usage

    .deparseOpts(control)

### Arguments

`control` | character vector of deparsing options.

### Details

This is called by `deparse`, `dput` and `dump` to process their `control` argument.

The `control` argument is a vector containing zero or more of the following strings. Partial string matching is used.

`keepInteger`
  Either surround integer vectors by `as.integer()` or use suffix `L`, so they are not converted to type double when parsed. This includes making sure that integer `NA`s are preserved (via `NA_integer_` if there are no non-`NA` values in the vector, unless `"S_compatible"` is set).
`quoteExpressions`
  Surround expressions with `quote()`, so they are not evaluated when re-parsed.
`showAttributes`
  If the object has attributes (other than a `source` attribute), use `structure()` to display them as well as the object value. This is the default for `deparse` and `dput`.
`useSource`
  If the object has a `source` attribute, display that instead of deparsing the object. Currently only applies to function definitions.
`warnIncomplete`
  Some exotic objects such as environments, external pointers, etc. can not be deparsed properly. This option causes a warning to be issued if any of those may give problems.
`keepNA`
  Integer, real and character `NA`s are surrounded by coercion where necessary to ensure that they are parsed to the same type.
`all`
  An abbreviated way to specify all of the options listed above. This is the default for `dump`, and the options used by `edit` (which are fixed).
`delayPromises`
  Deparse promises in the form <promise: expression> rather than evaluating them. The value and the environment of the promise will not be shown and the deparsed code cannot be sourced.
`S_compatible`
  Make deparsing as far as possible compatible with S and R < 2.5.0. For compatibility with S, integer values of double vectors are deparsed with a trailing decimal point.

For the most readable (but perhaps incomplete) display, use `control = NULL`. This displays the object's value, but not its attributes. The default in `deparse` is to display the attributes as well, but not to use any of the other options to make the result parseable. (`dput` and `dump` do use more default options, and printing of functions without sources uses `c("keepInteger", "keepNA")`.)

Using `control = "all"` comes closest to making `deparse()` an inverse of `parse()`. However, not all objects are deparse-able even with this option. A warning will be issued if the function recognizes that it is being asked to do the impossible.

### Value

A numerical value corresponding to the options selected.

[Package base version 2.6.0 Index]