fn cast_string_to_timestamp_impl<'a, I: Iterator<Item = Option<&'a str>>, T: ArrowTimestampType, Tz: TimeZone>( iter: I, tz: &Tz, cast_options: &CastOptions<'_>, ) -> Result<PrimitiveArray<T>, ArrowError>