/**
* GeDBIT.type.Symbol 2006.05.24
*
* Copyright Information:
*
* Change Log:
* 2006.05.24: Modified from the original jdb package, by Willard
*/
package GeDBIT.type;
import java.io.Externalizable;
/**
* Interface <code>Symbol</code> is implemented for the characters of a
* biosequence alphabet. Since biosequences often have a long life in an
* external representation, <code>Symbol</code> alphabets should have a
* similarly long life, suggesting that they be immutable and easily
* serializable. In this package, this is accomplished by implementing
* <code>Symbol</code> sets as java enums. In addition, {@link Sequence}s using
* <code>Symbol</code> alphabets include a <code>static public final</code>
* {@link Alphabet} instance, named <code>ALPHABET</code>, that references the
* enumeration. For example, class {@link Peptide} contains the the class
* {@link Peptide.AminoAcid} that implements <code>Symbol</code>for the common
* amino acids.
*
* @author Jack, Rui Mao, Willard
* @version 2003.06.04
*/
public interface Symbol extends Externalizable {
/**
* @param s
* @return
*/
public Symbol getSymbol(String s);
/**
* @return
*/
public byte byteValue();
/**
* @return
*/
public String stringValue();
}