OSDN Git Service

cflib は plugins プロジェクトから,Stigmata直下のプロジェクトに移行したため,このリポジトリからは削除した.
[stigmata/stigmata-plugins.git] / kgram / src / main / java / jp / sourceforge / stigmata / birthmarks / kgram / KGramBasedBirthmarkElement.java
1 package jp.sourceforge.stigmata.birthmarks.kgram;
2
3 import jp.sourceforge.stigmata.BirthmarkElement;
4
5 /**
6  * 
7  * @author Haruaki TAMADA
8  */
9 public class KGramBasedBirthmarkElement<T> extends BirthmarkElement{
10     private static final long serialVersionUID = 28546543857543634L;
11
12     private KGram<T> kgram;
13
14     public KGramBasedBirthmarkElement(KGram<T> kgram){
15         super(kgram.toString());
16         this.kgram = kgram;
17     }
18
19     @Override
20     @SuppressWarnings("rawtypes")
21     public boolean equals(Object o){
22         return o instanceof KGramBasedBirthmarkElement &&
23             kgram.equals(((KGramBasedBirthmarkElement)o).kgram);
24     }
25
26     @Override
27     public int hashCode(){
28         int v = kgram.hashCode();
29
30         return (v & 0xff << 24) | (v >> 8); 
31     }
32 }