## org.biojava.bio.symbol
Class Alphabet.EmptyAlphabet

    java.lang.Object
      |
      +--org.biojava.bio.symbol.Alphabet.EmptyAlphabet

Enclosing class:
  Alphabet

public static class Alphabet.EmptyAlphabet
extends java.lang.Object
implements FiniteAlphabet, java.io.Serializable

The class that implements Alphabet and is empty.

See Also:
  Serialized Form

Inner classes inherited from class org.biojava.bio.symbol.Alphabet
`Alphabet.EmptyAlphabet`

Fields inherited from interface org.biojava.bio.symbol.Alphabet
`EMPTY_ALPHABET`

Constructor Summary
`Alphabet.EmptyAlphabet()`

Method Summary
`boolean` `contains(Symbol s)` Returns whether or not this Alphabet contains the symbol.
`Annotation` `getAnnotation()` Should return the associated annotation object.
`java.lang.String` `getName()` Get the name of the alphabet.
`SymbolParser` `getParser(java.lang.String name)` Get a parser by name.
`java.util.Iterator` `iterator()` Retrieve an Iterator over the Symbols in this FiniteAlphabet.
`int` `size()` The number of symbols in the alphabet.
`SymbolList` `symbols()` A list of symbols that make up this alphabet.
`void` `validate(Symbol res)` Throws a precanned IllegalSymbolException if the symbol is not contained within this Alphabet.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Alphabet.EmptyAlphabet

    public Alphabet.EmptyAlphabet()

Method Detail

### getName

    public java.lang.String getName()

  Description copied from interface: Alphabet
  Get the name of the alphabet.
  Tags copied from interface: Alphabet
  Returns:
    the name as a string.

### getAnnotation

    public Annotation getAnnotation()

  Description copied from interface: Annotatable
  Should return the associated annotation object.
  Tags copied from interface: Annotatable
  Returns:
    an Annotation object, never null

### contains

    public boolean contains(Symbol s)

  Description copied from interface: Alphabet
  Returns whether or not this Alphabet contains the symbol.

  An alphabet contains an ambiguity symbol iff the ambiguity symbol's getMemberAlphabet() returns an alphabe that is a propper sub-set of this alphabet. That means that every one of the symbols that could mach the ambiguity symbol is also a member of this alphabet.

  Tags copied from interface: Alphabet
  Parameters:
    `r` - the Symbol to check
  Returns:
    boolean true if the Alphabet contains the symbol and false otherwise

### validate

    public void validate(Symbol res)
                  throws IllegalSymbolException

  Description copied from interface: Alphabet
  Throws a precanned IllegalSymbolException if the symbol is not contained within this Alphabet.

  This function is used all over the code to validate symbols as they enter a method. Also, the code is littered with catches for IllegalSymbolException. There is a preferred style of handling this, which should be covererd in the package documentation.

  Tags copied from interface: Alphabet
  Parameters:
    `r` - the Symbol to validate
  Throws:
    IllegalSymbolException - if r is not contained in this alphabet

### getParser

    public SymbolParser getParser(java.lang.String name)
                           throws java.util.NoSuchElementException

  Description copied from interface: Alphabet
  Get a parser by name.

  The parser returned is guaranteed to return Symbols and SymbolLists that conform to this alphabet.

  Every alphabet should have a SymbolParser under the name 'token' that uses the symbol token characters to translate a string into a SymbolList. Likewise, there should be a SymbolParser under the name 'name' that uses symbol names to identify symbols. Any other names may also be defined, but the behaviour of that parser is not defined here.

  Tags copied from interface: Alphabet
  Parameters:
    `name` - the name of the parser
  Returns:
    a parser for that name
  Throws:
    java.util.NoSuchElementException - if the name is unknown
    BioException - if for any reason the parser could not be built

### size

    public int size()

  Description copied from interface: FiniteAlphabet
  The number of symbols in the alphabet.
  Specified by:
    size in interface FiniteAlphabet
  Tags copied from interface: FiniteAlphabet
  Returns:
    the size of the alphabet

### iterator

    public java.util.Iterator iterator()

  Description copied from interface: FiniteAlphabet
  Retrieve an Iterator over the Symbols in this FiniteAlphabet.

  Each AtomicSymbol as for which this.contains(as) is true will be returned exactly once by this iterator in no specified order.

  Specified by:
    iterator in interface FiniteAlphabet
  Tags copied from interface: FiniteAlphabet
  Returns:
    an Iterator over the contained AtomicSymbol objects

### symbols

    public SymbolList symbols()

  Description copied from interface: FiniteAlphabet
  A list of symbols that make up this alphabet.

  Subsequent calls to this method are not required to return either the same symbol list, or even a symbol list with the symbols in the same order.

  Specified by:
    symbols in interface FiniteAlphabet
  Tags copied from interface: FiniteAlphabet
  Returns:
    a SymbolList containing one AtomicSymbol for each AtomicSymbol in this alphabet