001package org.maltparser.core.feature.function; 002 003import org.maltparser.core.exception.MaltChainedException; 004import org.maltparser.core.feature.value.FeatureValue; 005import org.maltparser.core.symbol.SymbolTable; 006/** 007* 008* 009* @author Johan Hall 010*/ 011public interface FeatureFunction extends Function { 012 /** 013 * Returns the string representation of the integer <code>code</code> according to the feature function. 014 * 015 * @param code the integer representation of the symbol 016 * @return the string representation of the integer <code>code</code> according to the feature function. 017 * @throws MaltChainedException 018 */ 019 public abstract String getSymbol(int code) throws MaltChainedException; 020 /** 021 * Returns the integer representation of the string <code>symbol</code> according to the feature function. 022 * 023 * @param symbol the string representation of the symbol 024 * @return the integer representation of the string <code>symbol</code> according to the feature function. 025 * @throws MaltChainedException 026 */ 027 public abstract int getCode(String symbol) throws MaltChainedException; 028 /** 029 * Returns the symbol table used by the feature function. 030 * 031 * @return the symbol table used by the feature function. 032 */ 033 public abstract SymbolTable getSymbolTable(); 034 /** 035 * Returns the feature value 036 * 037 * @return the feature value 038 */ 039 public abstract FeatureValue getFeatureValue(); 040 041 public abstract int getType(); 042 public abstract String getMapIdentifier(); 043}