\Header{noquote}{Class for ``no quote'' Printing of Strings}
\alias{as.matrix.noquote}{noquote}
\alias{print.noquote}{noquote}
\keyword{print}{noquote}
\keyword{methods}{noquote}
\keyword{utilities}{noquote}
\begin{Description}\relax
These functions exist both as utilities and as an example of using
\code{\Link{class}} and object orientation.\end{Description}
\begin{Usage}
\begin{verbatim}
noquote(obj)
print.noquote(x, ...)
obj[j]
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{obj, x}] any \R{} object; typically a vector of \code{\Link{character}}
strings.
\item[\code{...}] further options for \code{\Link{print}}.
\end{ldescription}
\end{Arguments}
\begin{Value}
\code{noquote} returns its argument as an object of class
\code{"noquote"}.  The function \code{"[.noquote"} ensures that the
class is not lost by subsetting.

For (default) printing, \code{print.noquote} will be used which prints
characters \emph{without} quotes (\code{"..."}).\end{Value}
\begin{Author}\relax
Martin Maechler \email{maechler@stat.math.ethz.ch}\end{Author}
\begin{SeeAlso}\relax
\code{\Link{methods}},\code{\Link{class}},\code{\Link{print}}.\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
letters
nql <- noquote(letters)
nql
nql[1:4] <- "oh"
nql[1:12]

cmp.logical <- function(log.v)
{
  ## Purpose: compact printing of logicals
  log.v <- as.logical(log.v)
  noquote(if(length(log.v)==0)"()" else c(".","|")[1+log.v])
}
cmp.logical(runif(20) > 0.8)
\end{ExampleCode}
\end{Examples}

