\HeaderA{AAString-class}{The AAString class}{AAString.Rdash.class}
\aliasA{AAString}{AAString-class}{AAString}
\aliasA{AA\_ALPHABET}{AAString-class}{AA.Rul.ALPHABET}
\aliasA{alphabet,AAString-method}{AAString-class}{alphabet,AAString.Rdash.method}
\aliasA{class:AAString}{AAString-class}{class:AAString}
\aliasA{initialize,AAString-method}{AAString-class}{initialize,AAString.Rdash.method}
\keyword{methods}{AAString-class}
\keyword{classes}{AAString-class}
\begin{Description}\relax
A \code{AAString} object allows efficient storage
and manipulation of a long amino acid sequence.
\end{Description}
\begin{Details}\relax
The \code{AAString} class derives directly from the
\code{\LinkA{BString}{BString}} class (with no additional slot).
All functions and methods described in the
\code{\LinkA{BString}{BString}} man page also work
with a \code{AAString} object (inheritance).

Unlike a \code{\LinkA{BString}{BString}} object that allows storage
of any non-empty string (based on a single-byte character set)
a \code{AAString} object can only store a non-empty string
based on the AAString alphabet (see below).
\end{Details}
\begin{Section}{The AAString alphabet}
This alphabet contains all letters from the
Single-Letter Amino Acid Code (see \code{\LinkA{AMINO\_ACID\_CODE}{AMINO.Rul.ACID.Rul.CODE}})
+ the stop letter \code{"*"}.
It is stored in the \code{AA\_ALPHABET} constant (character vector).
The \code{alphabet} method also returns
\code{AA\_ALPHABET} when applied to a \code{AAString}
object and is provided for convenience only.
\end{Section}
\begin{Section}{Constructor-like functions and generics}
In the code snippet below,
\code{src} can be a character vector
or a \code{\LinkA{BString}{BString}} (or derived) object.

\describe{
\item[] \code{AAString(src)}:
[TODO: Document me]

}
\end{Section}
\begin{Author}\relax
H. Pages
\end{Author}
\begin{SeeAlso}\relax
\code{\LinkA{BString}{BString}}, \code{\LinkA{AMINO\_ACID\_CODE}{AMINO.Rul.ACID.Rul.CODE}},
\code{\LinkA{BStringViews}{BStringViews}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
  AA_ALPHABET
  a <- AAString("MARKSLEMSIR*")
  length(a)
  alphabet(a)
\end{ExampleCode}
\end{Examples}


