001    package org.biojava3.core.sequence.compound;
002    
003    import org.biojava3.core.sequence.template.AbstractNucleotideCompoundSet;
004    
005    /**
006     *
007     * @author Andy Yates
008     */
009    public class RNACompoundSet extends AbstractNucleotideCompoundSet<NucleotideCompound> {
010    
011      private static class InitaliseOnDemand {
012        public static final RNACompoundSet INSTANCE = new RNACompoundSet();
013      }
014      public static RNACompoundSet getRNACompoundSet() {
015        return InitaliseOnDemand.INSTANCE;
016      }
017    
018      public RNACompoundSet() {
019        addNucleotideCompound("A", "U");
020        addNucleotideCompound("U", "A");
021        addNucleotideCompound("G", "C");
022        addNucleotideCompound("C", "G");
023        addNucleotideCompound("N", "N");
024        addNucleotideCompound("-", "-");
025      }
026    
027      public NucleotideCompound newNucleotideCompound(String base, String complement, String... equivalents) {
028        return new NucleotideCompound(base, this, complement);
029      }
030    }