\HeaderA{makeClassRepresentation}{Create a Class Definition}{makeClassRepresentation}
\keyword{programming}{makeClassRepresentation}
\keyword{classes}{makeClassRepresentation}
\begin{Description}\relax
Constructs an object of class \code{\LinkA{classRepresentation}{classRepresentation.Rdash.class}}
to describe a particular class.  Mostly a utility function, but you can
call it to create a class definition without assigning it, as
\code{\LinkA{setClass}{setClass}} would do.
\end{Description}
\begin{Usage}
\begin{verbatim}
makeClassRepresentation(name, slots=list(), superClasses=character(),
                        prototype=NULL, package, validity, access,
                        version, sealed, virtual=NA, where)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{name}] character string name for the class
\item[\code{slots}] named list of slot classes as would be supplied to
\code{setClass}, but \emph{without} the unnamed arguments for
superClasses if any.
\item[\code{superClasses}] what classes does this class extend
\item[\code{prototype}] an object providing the default data for the class,
e.g, the result of a call to \code{\LinkA{prototype}{prototype}}.
\item[\code{package}] The character string name for the package in which
the class will be stored; see \code{\LinkA{getPackageName}{getPackageName}}.
\item[\code{validity}] Optional validity method.  See
\code{\LinkA{validObject}{validObject}}, and the discussion of validity methods in
the reference.
\item[\code{access}] Access information.  Not currently used.
\item[\code{version}] Optional version key for version control.  Currently
generated, but not used.
\item[\code{sealed}] Is the class sealed? See \code{\LinkA{setClass}{setClass}}.
\item[\code{virtual}] Is this known to be a virtual class?
\item[\code{where}] The environment from which to look for class
definitions needed (e.g., for slots or superclasses). See the
discussion of this argument under \LinkA{GenericFunctions}{GenericFunctions}.
\end{ldescription}
\end{Arguments}
\begin{References}\relax
Chambers, John M. (2008)
\emph{Software for Data Analysis: Programming with R}
Springer.  (For the R version.)

Chambers, John M. (1998)
\emph{Programming with Data}
Springer (For the original S4 version.)
\end{References}
\begin{SeeAlso}\relax
\code{\LinkA{setClass}{setClass}}
\end{SeeAlso}

