001package org.maltparser.core.symbol;
002
003import java.io.BufferedReader;
004import java.io.BufferedWriter;
005
006import org.maltparser.core.exception.MaltChainedException;
007import org.maltparser.core.symbol.nullvalue.NullValues.NullValueId;
008
009public interface SymbolTable extends Table {
010        // Categories
011        public static final int NA = -1;
012        public static final int INPUT = 1;
013        public static final int OUTPUT = 3;
014        public static final String[] categories = { "", "INPUT", "", "OUTPUT", };
015        
016        // Types
017        public static final int STRING = 1;
018        public static final int INTEGER = 2;
019        public static final int BOOLEAN = 3;
020        public static final int REAL = 4;
021        public static final String[] types = { "", "STRING", "INTEGER", "BOOLEAN", "REAL" };
022        
023        
024        public void save(BufferedWriter out) throws MaltChainedException;
025        public void load(BufferedReader in) throws MaltChainedException;
026        public int getValueCounter();
027        public int getNullValueCode(NullValueId nullValueIdentifier) throws MaltChainedException;
028        public String getNullValueSymbol(NullValueId nullValueIdentifier) throws MaltChainedException;
029        public boolean isNullValue(String value) throws MaltChainedException;
030        public boolean isNullValue(int code) throws MaltChainedException;
031}