question: public NullInfoRegistry add ( NullInfoRegistry other ) { if ( ( other . tagBits & NULL_FLAG_MASK ) == 0 ) { return this ; } this . tagBits |= NULL_FLAG_MASK ; this . nullBit1 |= other . nullBit1 ; this . nullBit2 |= other . nullBit2 ; this . nullBit3 |= other . nullBit3 ; this . nullBit4 |= other . nullBit4 ; if ( other . extra != null ) { if ( this . extra == null ) { this . extra = new long [ extraLength ] [ ] ; for ( int i = 2 , length = other . extra [ 2 ] . length ; i < extraLength ; i ++ ) { System . arraycopy ( other . extra [ i ] , 0 , ( this . extra [ i ] = new long [ length ] ) , 0 , length ) ; } } else { int length = this . extra [ 2 ] . length , otherLength = other . extra [ 2 ] . length ; if ( otherLength > length ) { for ( int i = 2 ; i < extraLength ; i ++ ) { System . arraycopy ( this . extra [ i ] , 0 , ( this . extra [ i ] = new long [ otherLength ] ) , 0 , length ) ; System . arraycopy ( other . extra [ i ] , length , this . extra [ i ] , length , otherLength - length ) ; } } else if ( otherLength < length ) { length = otherLength ; } for ( int i = 2 ; i < extraLength ; i ++ ) { for ( int j = 0 ; j < length ; j ++ ) { this . extra [ i ] [ j ] |= other . extra [ i ] [ j ] ; } } } } return this ; }
target:  Add the information held by another NullInfoRegistry instance to this, then return this.