001 package org.maltparser.core.feature.value; 002 003 import org.maltparser.core.feature.function.Function; 004 /** 005 * 006 * 007 * @author Johan Hall 008 * @since 1.0 009 **/ 010 public class SingleFeatureValue extends FeatureValue { 011 protected int code; 012 protected String symbol; 013 protected boolean known; 014 015 public SingleFeatureValue(Function function) { 016 super(function); 017 setCode(0); 018 setSymbol(null); 019 setKnown(true); 020 } 021 022 public void reset() { 023 super.reset(); 024 setCode(0); 025 setSymbol(null); 026 setKnown(true); 027 } 028 029 public int getCode() { 030 return code; 031 } 032 033 public void setCode(int code) { 034 this.code = code; 035 } 036 037 public String getSymbol() { 038 return symbol; 039 } 040 041 public void setSymbol(String symbol) { 042 this.symbol = symbol; 043 } 044 045 public boolean isKnown() { 046 return known; 047 } 048 049 public void setKnown(boolean known) { 050 this.known = known; 051 } 052 053 public boolean equals(Object obj) { 054 if (!(obj instanceof SingleFeatureValue)) { 055 return false; 056 } else if (!symbol.equals(((SingleFeatureValue)obj).symbol)) { 057 return false; 058 } else if (code != ((SingleFeatureValue)obj).code) { 059 return false; 060 } 061 return super.equals(obj); 062 } 063 064 public String toString() { 065 return super.toString()+ "{" + symbol + " -> " + code + ", known=" + known +"} "; 066 } 067 }