@@ -24,7 +24,7 @@ impl<H: HostHooks> Now<H> {
2424 pub ( crate ) fn system_datetime_with_provider (
2525 self ,
2626 time_zone : Option < TimeZone > ,
27- provider : & impl TimeZoneProvider ,
27+ provider : & ( impl TimeZoneProvider + ? Sized ) ,
2828 ) -> TemporalResult < IsoDateTime > {
2929 let system_nanoseconds = self . host_hooks . get_system_epoch_nanoseconds ( ) ?;
3030 let time_zone = time_zone. unwrap_or ( self . host_hooks . get_system_time_zone ( provider) ?) ;
@@ -34,7 +34,7 @@ impl<H: HostHooks> Now<H> {
3434 /// Converts the current [`Now`] into a [`TimeZone`].
3535 pub fn time_zone_with_provider (
3636 self ,
37- provider : & impl TimeZoneProvider ,
37+ provider : & ( impl TimeZoneProvider + ? Sized ) ,
3838 ) -> TemporalResult < TimeZone > {
3939 self . host_hooks . get_system_time_zone ( provider)
4040 }
@@ -50,7 +50,7 @@ impl<H: HostHooks> Now<H> {
5050 pub fn zoned_date_time_iso_with_provider (
5151 self ,
5252 time_zone : Option < TimeZone > ,
53- provider : & impl TimeZoneProvider ,
53+ provider : & ( impl TimeZoneProvider + ? Sized ) ,
5454 ) -> TemporalResult < ZonedDateTime > {
5555 let system_nanoseconds = self . host_hooks . get_system_epoch_nanoseconds ( ) ?;
5656 let time_zone = time_zone. unwrap_or ( self . host_hooks . get_system_time_zone ( provider) ?) ;
@@ -67,7 +67,7 @@ impl<H: HostHooks> Now<H> {
6767 pub fn plain_date_time_iso_with_provider (
6868 self ,
6969 time_zone : Option < TimeZone > ,
70- provider : & impl TimeZoneProvider ,
70+ provider : & ( impl TimeZoneProvider + ? Sized ) ,
7171 ) -> TemporalResult < PlainDateTime > {
7272 let iso = self . system_datetime_with_provider ( time_zone, provider) ?;
7373 Ok ( PlainDateTime :: new_unchecked ( iso, Calendar :: ISO ) )
@@ -80,7 +80,7 @@ impl<H: HostHooks> Now<H> {
8080 pub fn plain_date_iso_with_provider (
8181 self ,
8282 time_zone : Option < TimeZone > ,
83- provider : & impl TimeZoneProvider ,
83+ provider : & ( impl TimeZoneProvider + ? Sized ) ,
8484 ) -> TemporalResult < PlainDate > {
8585 let iso = self . system_datetime_with_provider ( time_zone, provider) ?;
8686 Ok ( PlainDate :: new_unchecked ( iso. date , Calendar :: ISO ) )
@@ -93,7 +93,7 @@ impl<H: HostHooks> Now<H> {
9393 pub fn plain_time_with_provider (
9494 self ,
9595 time_zone : Option < TimeZone > ,
96- provider : & impl TimeZoneProvider ,
96+ provider : & ( impl TimeZoneProvider + ? Sized ) ,
9797 ) -> TemporalResult < PlainTime > {
9898 let iso = self . system_datetime_with_provider ( time_zone, provider) ?;
9999 Ok ( PlainTime :: new_unchecked ( iso. time ) )
@@ -148,7 +148,10 @@ mod tests {
148148 }
149149
150150 impl HostTimeZone for TestHooks {
151- fn get_host_time_zone ( & self , _: & impl TimeZoneProvider ) -> TemporalResult < TimeZone > {
151+ fn get_host_time_zone (
152+ & self ,
153+ _: & ( impl TimeZoneProvider + ?Sized ) ,
154+ ) -> TemporalResult < TimeZone > {
152155 Ok ( self . time_zone )
153156 }
154157 }
0 commit comments