question: public CsvWriter put ( int index , String value ) throws CsvException { if ( disposition == null ) { disposition = new HashMap < Character , Disposition > ( 256 ) ; for ( char c : escapedChars . toCharArray ( ) ) { disposition . put ( c , Disposition . escape ) ; } for ( char c : suppressedChars . toCharArray ( ) ) { disposition . put ( c , Disposition . suppress ) ; } } if ( row == null ) { int size = getWidth ( ) ; row = new ArrayList < String > ( size ) ; for ( int i = 0 ; i < size ; i ++ ) row . add ( null ) ; colCount = 0 ; } if ( index < 1 || index > row . size ( ) ) { throw new CsvException ( "Attempt to write to invalid column index: index=" + index + " value=" + value + " row size=" + row . size ( ) ) ; } int arrayIndex = index - 1 ; if ( row . get ( arrayIndex ) != null ) { throw new CsvException ( "Attempt to write value twice to same row: index=" + index + " old value=" + row . get ( arrayIndex ) + " new value=" + value + " (does table have a PK and is it single-column?)" ) ; } if ( value == null ) { if ( this . nullPolicy == NullPolicy . emptyString ) value = processString ( "" ) ; else if ( nullPolicy == NullPolicy . skip ) value = null ; else value = nullValue ; } else { value = processString ( value ) ; } row . set ( arrayIndex , value ) ; colCount ++ ; return this ; }
target:  Writes value to current row. This is the base value.