function processor( parser ) {
	var delimiterLastIndex;
	var newlineLastIndex;
	var delimiter;
	var newline;

	delimiterLastIndex = parser._delimiterLastIndex;
	delimiter = parser._delimiter;

	newlineLastIndex = parser._newlineLastIndex;
	newline = parser._newline;

	return next;

	/**
	* Processes a character.
	*
	* @private
	* @param {string} ch - character
	* @returns {void}
	*/
	function next( ch ) {
		debug( 'Char: %s', ch );

		/*
		* Check for a field delimiter.
		*/
		if (
			ch === delimiter[ delimiterLastIndex ] &&
			parser._scan( delimiter, delimiterLastIndex )
		) {
			// Rewind the cursor to point to the last character before the delimiter character sequence:
			debug( 'Delimiter.' );
			parser._rewind( delimiterLastIndex );

			// Remove whitespace and resume processing:
			removeWhitespace( parser, FIELD );
			return;
		}
		/*
		* Check for a row separator.
		*/
		if (
			ch === newline[ newlineLastIndex ] &&
			parser._scan( newline, newlineLastIndex )
		) {
			// Rewind the cursor to point to the last character before the newline character sequence:
			debug( 'Newline.' );
			parser._rewind( newlineLastIndex );

			// Remove whitespace and resume processing:
			removeWhitespace( parser, INIT );
			return;
		}
		// Continue processing until we can transition to a new state:
		parser._push( ch );
	}
}
Returns a function for processing field characters after an ending quote sequence.

@private
@param {Parser} parser - parser instance
@returns {Function} processing function