question: returns a buffer from the pool if one is available in the requested size , or allocates a new one if a pooled one is not available . concode_field_sep List<byte[]> mBuffersByLastUse concode_elem_sep Comparator<byte[]> BUF_COMPARATOR concode_elem_sep ByteArrayPool mPool concode_elem_sep List<byte[]> mBuffersBySize concode_elem_sep int mCurrentSize concode_elem_sep int mSizeLimit concode_field_sep void returnBuf concode_elem_sep void init concode_elem_sep int compare concode_elem_sep void trim concode_elem_sep ByteArrayPool get
target: byte [ ] function ( int arg0 ) { for ( int loc0 = 0 ; loc0 < mBuffersBySize . size ( ) ; loc0 ++ ) { byte [ ] loc1 = mBuffersBySize . get ( loc0 ) ; if ( loc1 . length >= arg0 ) { mCurrentSize -= loc1 . length ; mBuffersBySize . remove ( loc0 ) ; mBuffersByLastUse . remove ( loc1 ) ; return loc1 ; } } return new byte [ arg0 ] ; }