From ripley at stats.ox.ac.uk  Tue Mar 14 15:16:23 2006
From: ripley at stats.ox.ac.uk (Prof Brian Ripley)
Date: Tue, 14 Mar 2006 14:16:23 +0000 (GMT)
Subject: [Rd] Can example() code stop the example without generating an
 error?
In-Reply-To: <4416BEC7.2070807@statistik.uni-dortmund.de>
References: <59d7961d0603140440t6a51f55j31dedad5325d9224@mail.gmail.com>
	<4416BEC7.2070807@statistik.uni-dortmund.de>
Message-ID: <Pine.LNX.4.64.0603141415100.8761@gannet.stats.ox.ac.uk>

On Tue, 14 Mar 2006, Uwe Ligges wrote:

> Henrik Bengtsson wrote:
>
>> Hi,
>>
>> does anyone know if it is possible to write example code (in Rd
>> examples) such that one can stop the example without generating an
>> error?  Example:
>>
>> code A
>> if (cond)
>>   niceStop()
>> code B
>
>
> What about
>
> code A
> if(cond){
>   code B
> }
>
> But maybe I do not get your point.

That is how many examples in base R do it.  The only thing to remember is 
that you have to explicitly print inside any such test.

>
> Uwe Ligges
>
>
>> I know this sounds weird, but I would like some of my Rd examples to
>> run if and only if another package is available or if a certain large
>> Affymetrix data file is available.  One can put all of the example in
>> a function and return from the function if the package is not
>> available, but then all object assigned are lost. My best/cleanest
>> solution right now is to use break in a dummy for loop. Examples:
>>
>> for (z in 1) {
>>
>> code A
>> if (cond)
>>   break
>> code B
>>
>> }
>>
>> Other suggestions?  The solution must off course pass R CMD check.
>>
>> /Henrik
>>
>> PS. I know example() calls source(), but I'm not sure how R CMD check
>> does it. DS.
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



[Rd] Can example() code stop the example without generating an error?
Prof Brian Ripley