From georgi@bo@hn@kov @ending from m@nche@ter@@c@uk  Mon Jun 18 16:20:00 2018
From: georgi@bo@hn@kov @ending from m@nche@ter@@c@uk (Georgi Boshnakov)
Date: Mon, 18 Jun 2018 14:20:00 +0000
Subject: [Rd] incomplete results from as.character.srcref() in some cases
 involving quote()
Message-ID: <438D2EC9EAFE5946B2D5864670EA468E018F65DC48@MBXP01.ds.man.ac.uk>

Hi,

The result of  as,character() on  'srcref' objects doesn't have the closing ')' in some cases involving 'quote':

> e4 <- quote({2+2})
> class(attr(e4, "wholeSrcref"))
[1] "srcref"
> as.character(attr(e4, "wholeSrcref"))
[1] "e4 <- quote({2+2}"

As a result printing the object also lacks it and gives an incomplete expression:

> attr(e4, "wholeSrcref")
e4 <- quote({2+2}

It seems that it is the top level quote that suffers from this. Here the inner 'quote' has the matching ')' but the outer one doesn't:

> e5 <- quote({quote({2+2})})
> class(attr(e5, "wholeSrcref"))
[1] "srcref"
> attr(e5, "wholeSrcref")
e5 <- quote({quote({2+2})}
> as.character(attr(e5, "wholeSrcref"))
[1] "e5 <- quote({quote({2+2})}"
> attributes(e5)
...

$wholeSrcref
e5 <- quote({quote({2+2})}


Attribute 'wholeSrcref' seems undocumented but it is of class 'srcref' which is documented (eg ?srcref) and has supporting methods.


Georgi Boshnakov



	[[alternative HTML version deleted]]



[Rd] incomplete results from as.character.srcref() in some cases involving quote()
Georgi Boshnakov