    001    package org.maltparser.core.symbol;
    002
    003    import java.io.BufferedReader;
    004    import java.io.BufferedWriter;
    005    import java.util.Set;
    006
    007    import org.apache.log4j.Logger;
    008    import org.maltparser.core.exception.MaltChainedException;
    009    import org.maltparser.core.symbol.nullvalue.NullValues.NullValueId;
    010
    011    public interface SymbolTable extends Table {
    012            public int addSymbol(StringBuilder symbol) throws MaltChainedException;
    013            public boolean getKnown(int code);
    014            public boolean getKnown(String symbol);
    015            public void makeKnown(int code);
    016            public Set<Integer> getCodes();
    017            public void printSymbolTable(Logger logger) throws MaltChainedException;
    018            public void save(BufferedWriter out) throws MaltChainedException;
    019            public void load(BufferedReader in) throws MaltChainedException;
    020            public int getValueCounter();
    021            public int getNullValueCode(NullValueId nullValueIdentifier) throws MaltChainedException;
    022            public String getNullValueSymbol(NullValueId nullValueIdentifier) throws MaltChainedException;
    023            public boolean isNullValue(String value) throws MaltChainedException;
    024            public boolean isNullValue(int code) throws MaltChainedException;
    025            public void copy(SymbolTable fromTable) throws MaltChainedException;
    026    }