public final boolean getSet ( char src [ ] , int srcStart ) { // leave most argument checking up to Java exceptions array = null ; arrayOffset = bmpLength = length = 0 ; length = src [ srcStart ++ ] ; if ( ( length & 0x8000 ) != 0 ) { /* there are supplementary values */ length &= 0x7fff ; if ( src . length < ( srcStart + 1 + length ) ) { length = 0 ; throw new IndexOutOfBoundsException ( ) ; } bmpLength = src [ srcStart ++ ] ; } else { /* only BMP values */ if ( src . length < ( srcStart + length ) ) { length = 0 ; throw new IndexOutOfBoundsException ( ) ; } bmpLength = length ; } array = new char [ length ] ; System . arraycopy ( src , srcStart , array , 0 , length ) ; //arrayOffset=srcStart; return true ; }
Fill in the given serialized set object .