question: public void remove ( int index ) { ensureMutableMessageList ( ) ; messages . remove ( index ) ; if ( builders != null ) { SingleFieldBuilder < MType , BType , IType > entry = builders . remove ( index ) ; if ( entry != null ) { entry . dispose ( ) ; } } onChanged ( ) ; incrementModCounts ( ) ; }
target:  Removes the element at the specified position in this list. Shifts any subsequent elements to the left (subtracts one from their indices). Returns the element that was removed from the list.