fn get_mutable_item<'a, 'b, T>(
    index: usize,
    inventory_items: &'a [Item],
    item_indices: &'a HashMap<i64, usize>,
    inventory: &'b mut T,
    get_mut_item: &'a impl Fn(&'b mut T, &str) -> Option<&'b mut Item>
) -> Result<&'a mut Item, PersistenceError>
where 'b: 'a,