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 (this == obj) 055 return true; 056 if (obj == null) 057 return false; 058 if (getClass() != obj.getClass()) 059 return false; 060 if (!symbol.equals(((SingleFeatureValue)obj).symbol)) 061 return false; 062 if (code != ((SingleFeatureValue)obj).code) 063 return false; 064 return super.equals(obj); 065 } 066 067 public String toString() { 068 return super.toString()+ "{" + symbol + " -> " + code + ", known=" + known +"} "; 069 } 070 }