pub fn process_vsv_input<D, F>(
    data: D,
    file_name: &str,
    delimiter: u8,
    process_row: F
) -> Result<D, Box<dyn Error>>where
    D: Data,
    F: Fn(StringRecord, &mut DataRow) -> Result<String, Box<dyn Error>>,