## org.biojava.bio.symbol
Interface AtomicSymbol

All Superinterfaces:
  Annotatable, BasisSymbol, Changeable, Symbol

All Known Subinterfaces:
  DotState, EmissionState, ModelInState, State

All Known Implementing Classes:
  DoubleAlphabet.DoubleSymbol, FundamentalAtomicSymbol, IntegerAlphabet.IntegerSymbol, MagicalState, ProfileEmissionState, SimpleAtomicSymbol, SimpleDotState, SimpleEmissionState, SimpleModelInState

    public interface AtomicSymbol

extends BasisSymbol

A symbol that is not ambiguous.

Atomic symbols are the real underlying elements that a SymbolList is meant to be composed of. DNA nucleotides are atomic, as are amino-acids. The getMatches() method should return an alphabet containing just the one Symbol.

The Symbol instances for single codons would be instances of AtomicSymbol as they can only be represented as a Set of symbols from their alphabet that contains just that one symbol.

AtomicSymbol instances guarantee that getMatches returns an Alphabet containing just that Symbol and each element of the List returned by getSymbols is also atomic.

Since:
  1.1
Author:
  Matthew Pocock

Nested Class Summary

Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
`Annotatable.AnnotationForwarder`

Field Summary

Fields inherited from interface org.biojava.bio.Annotatable
`ANNOTATION`

Method Summary

Methods inherited from interface org.biojava.bio.symbol.BasisSymbol
`getSymbols`

Methods inherited from interface org.biojava.bio.symbol.Symbol
`getMatches, getName`

Methods inherited from interface org.biojava.bio.Annotatable
`getAnnotation`

Methods inherited from interface org.biojava.utils.Changeable
`addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener`