@@ -273,13 +273,17 @@ fn run_server<
273273}
274274
275275impl client:: Client < crate :: TokenStream , crate :: TokenStream > {
276- pub fn run < S : Server > (
276+ pub fn run < S > (
277277 & self ,
278278 strategy : & impl ExecutionStrategy ,
279279 server : S ,
280280 input : S :: TokenStream ,
281281 force_show_panics : bool ,
282- ) -> Result < S :: TokenStream , PanicMessage > {
282+ ) -> Result < S :: TokenStream , PanicMessage >
283+ where
284+ S : Server ,
285+ S :: TokenStream : Default ,
286+ {
283287 let client:: Client { get_handle_counters, run, _marker } = * self ;
284288 run_server (
285289 strategy,
@@ -289,19 +293,23 @@ impl client::Client<crate::TokenStream, crate::TokenStream> {
289293 run,
290294 force_show_panics,
291295 )
292- . map ( < MarkedTypes < S > as Types >:: TokenStream :: unmark)
296+ . map ( |s| < Option < < MarkedTypes < S > as Types >:: TokenStream > > :: unmark ( s ) . unwrap_or_default ( ) )
293297 }
294298}
295299
296300impl client:: Client < ( crate :: TokenStream , crate :: TokenStream ) , crate :: TokenStream > {
297- pub fn run < S : Server > (
301+ pub fn run < S > (
298302 & self ,
299303 strategy : & impl ExecutionStrategy ,
300304 server : S ,
301305 input : S :: TokenStream ,
302306 input2 : S :: TokenStream ,
303307 force_show_panics : bool ,
304- ) -> Result < S :: TokenStream , PanicMessage > {
308+ ) -> Result < S :: TokenStream , PanicMessage >
309+ where
310+ S : Server ,
311+ S :: TokenStream : Default ,
312+ {
305313 let client:: Client { get_handle_counters, run, _marker } = * self ;
306314 run_server (
307315 strategy,
@@ -314,6 +322,6 @@ impl client::Client<(crate::TokenStream, crate::TokenStream), crate::TokenStream
314322 run,
315323 force_show_panics,
316324 )
317- . map ( < MarkedTypes < S > as Types >:: TokenStream :: unmark)
325+ . map ( |s| < Option < < MarkedTypes < S > as Types >:: TokenStream > > :: unmark ( s ) . unwrap_or_default ( ) )
318326 }
319327}
0 commit comments