operators (version 0.1-8)

withOptions: Alternative option mechanism


options is a slight rework on options that gives a S3 class options to the result. This allows the definition of a with method for the options. This is useful to execute a block of code with a set of options.


"with"(data, expr, ...) options(...)


Options to use. See options for details.
Options to use. This is typically a call to the options function
Code to execute.


For the function with.options, the result of the expression given in expr is returned. See details below.


The result of the expression that is evaulated is modified in order to keep the option context it is associated with. The class of the object created by the expression is expanded to include the withOptions class and the withOptions attribute that keeps the context in which the object has been created. This mechanism has been implemented specially for the automatic printing of objects that happens outside the call to the with.options function and not reflect the options requested by the user when the object is printed.

See Also

The original options function in the base package.


Run this code
	# part of ?glm
	counts <- c(18,17,15,20,10,20,25,13,12)
  outcome <- gl(3,1,9)
  treatment <- gl(3,3)
  print(d.AD <- data.frame(treatment, outcome, counts))
  glm.D93 <- glm(counts ~ outcome + treatment, family=poisson())
	summary( glm.D93 )
	with( options(show.signif.stars = FALSE,show.coef.Pvalues=FALSE), 
		summary( glm.D93) )
	a <- try( 
	  with( options( warn = 2) , warning( "more than a warning" ) ), 
		silent = TRUE )
  class( a )

Run the code above in your browser using DataLab