@Override public int hashCode() { int l = len; int h = 0; if (l > 0) { for (int i = 0; i < len; i++) { h = 31 * h + chars(i); } } return h; }
public boolean equals( Object o ) { if ( o instanceof StructInt ) { return ((StructInt) o).get() == value; } return false; }
@Override public String toString() { return "StructArray{" + "elemSize=" + getStructElemSize() + ", size=" + size() + '}'; }
public StructString(String init, int size) { chars = new char[size]; len = 0; setString(init); }
/** * only avaiable at top level * @param currentIndex */ public void clear(int currentIndex) { if ( template == null ) { throw new RuntimeException("not avaiable in embedded struct arrays. Use set(i,template) instead."); } set(currentIndex,template); }
@Override @NoAssist public Object getFieldValues() { return toString(); } }
@Override public int hashCode() { int l = len; int h = 0; if (l > 0) { for (int i = 0; i < len; i++) { h = 31 * h + chars(i); } } return h; }
@NoAssist public E get( int i ) { return (E) elems(i); // workaround javassist limit: no generics }
public StructByteString(String init, int size) { chars = new byte[size]; len = 0; setString(init); }
@Override @NoAssist public int compareTo(Object o) { if (o instanceof StructByteString) { return compareTo((StructByteString) o); } return -1; }
@Override @NoAssist public int compareTo(Object o) { if ( o instanceof StructString) { return compareTo((StructString)o); } return -1; }
@Override @NoAssist public Object getFieldValues() { return toString(); }
@NoAssist public StructArrIterator<E> iterator() { return new StructArrIterator<E>(); }
public <T extends FSTStruct> StructArray<T> toStructArray(int size, T onHeap) { StructArray<T> arr = new StructArray<T>(size,onHeap); return toStruct(arr); }
@NoAssist public int size() { return elemsLen(); }
public String toString() { // fixme: optimize this by direct copy char ch[] = new char[len]; for ( int i=0; i < len; i++ ) { ch[i] = chars(i); } return new String(ch); }
public boolean equals( Object o ) { if ( o instanceof StructInt ) { return ((StructInt) o).get() == value; } return false; }
public String toString() { // fixme: optimize this by direct copy byte ch[] = new byte[len]; for (int i = 0; i < len; i++) { ch[i] = chars(i); } return new String(ch,0); }
@NoAssist public void set(int i, E value ) { elems(i,value); // workaround javassist limit: no generics }