\Header{setSClass}{Low-level Class definition}
\keyword{programming}{setSClass}
\keyword{classes}{setSClass}
\begin{Description}\relax
This is the lower-level version of \code{\Link{setClass}}.  Unless you
really know why you are calling it, use \code{setClass} instead.\end{Description}
\begin{Usage}
\begin{verbatim}
setSClass(name, properties=list(), extends=character(),
          prototype=NULL, generatorFunction, where=1,
          subclasses=character(), virtual=NA, validity, access)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{name}] character string name for the class 
\item[\code{properties}] the \code{representation} argument to \code{setClass} 
\item[\code{extends}] what classes does this class extend 
\item[\code{prototype}] an object (usually a list) providing the default
data for the slots specified in the representation. 
\item[\code{generatorFunction}] an optional function to use in generating
new objects from the class 
\item[\code{where}] where to store the resulting definition (as metadata).
By default, uses the global environment. 
\item[\code{subclasses}] Classes that extend \emph{this} class.  
\item[\code{virtual}] Is this known to be a virtual class? 
\item[\code{validity, access}] Optional arguments for validity method and
access restrictions.  At the time of writing, these are included for
compatibility and are not used.  In the future, however, the
validity method is likely to be relevant.  See \emph{Programming
with Data} for its interpretation.
\end{ldescription}
\end{Arguments}
\begin{Author}\relax
John Chambers\end{Author}
\begin{References}\relax
The web page \url{http://www.omegahat.org/RSMethods/index.html} is the
primary documentation.

The functions in this package emulate the facility for classes and
methods described in \emph{Programming with Data} (John M. Chambers,
Springer, 1998).  See this book for further details and examples.\end{References}
\begin{SeeAlso}\relax
\code{\Link{setClass}}\end{SeeAlso}

