@@ -337,22 +337,30 @@ impl Generator {
337337            & self . settings . interface , 
338338            & self . settings . tag , 
339339        )  { 
340-             ( InterfaceStyle :: Positional ,  TagStyle :: Merged )  => { 
341-                 self . generate_tokens_positional_merged ( & raw_methods) 
342-             } 
340+             ( InterfaceStyle :: Positional ,  TagStyle :: Merged )  => self 
341+                 . generate_tokens_positional_merged ( 
342+                     & raw_methods, 
343+                     self . settings . inner_type . is_some ( ) , 
344+                 ) , 
343345            ( InterfaceStyle :: Positional ,  TagStyle :: Separate )  => { 
344346                unimplemented ! ( "positional arguments with separate tags are currently unsupported" ) 
345347            } 
346-             ( InterfaceStyle :: Builder ,  TagStyle :: Merged )  => { 
347-                 self . generate_tokens_builder_merged ( & raw_methods) 
348-             } 
348+             ( InterfaceStyle :: Builder ,  TagStyle :: Merged )  => self 
349+                 . generate_tokens_builder_merged ( 
350+                     & raw_methods, 
351+                     self . settings . inner_type . is_some ( ) , 
352+                 ) , 
349353            ( InterfaceStyle :: Builder ,  TagStyle :: Separate )  => { 
350354                let  tag_info = spec
351355                    . tags 
352356                    . iter ( ) 
353357                    . map ( |tag| ( & tag. name ,  tag) ) 
354358                    . collect :: < BTreeMap < _ ,  _ > > ( ) ; 
355-                 self . generate_tokens_builder_separate ( & raw_methods,  tag_info) 
359+                 self . generate_tokens_builder_separate ( 
360+                     & raw_methods, 
361+                     tag_info, 
362+                     self . settings . inner_type . is_some ( ) , 
363+                 ) 
356364            } 
357365        } ?; 
358366
@@ -503,10 +511,11 @@ impl Generator {
503511    fn  generate_tokens_positional_merged ( 
504512        & mut  self , 
505513        input_methods :  & [ method:: OperationMethod ] , 
514+         has_inner :  bool , 
506515    )  -> Result < TokenStream >  { 
507516        let  methods = input_methods
508517            . iter ( ) 
509-             . map ( |method| self . positional_method ( method) ) 
518+             . map ( |method| self . positional_method ( method,  has_inner ) ) 
510519            . collect :: < Result < Vec < _ > > > ( ) ?; 
511520
512521        // The allow(unused_imports) on the `pub use` is necessary with Rust 1.76+, in case the 
@@ -530,10 +539,13 @@ impl Generator {
530539    fn  generate_tokens_builder_merged ( 
531540        & mut  self , 
532541        input_methods :  & [ method:: OperationMethod ] , 
542+         has_inner :  bool , 
533543    )  -> Result < TokenStream >  { 
534544        let  builder_struct = input_methods
535545            . iter ( ) 
536-             . map ( |method| self . builder_struct ( method,  TagStyle :: Merged ) ) 
546+             . map ( |method| { 
547+                 self . builder_struct ( method,  TagStyle :: Merged ,  has_inner) 
548+             } ) 
537549            . collect :: < Result < Vec < _ > > > ( ) ?; 
538550
539551        let  builder_methods = input_methods
@@ -577,10 +589,13 @@ impl Generator {
577589        & mut  self , 
578590        input_methods :  & [ method:: OperationMethod ] , 
579591        tag_info :  BTreeMap < & String ,  & openapiv3:: Tag > , 
592+         has_inner :  bool , 
580593    )  -> Result < TokenStream >  { 
581594        let  builder_struct = input_methods
582595            . iter ( ) 
583-             . map ( |method| self . builder_struct ( method,  TagStyle :: Separate ) ) 
596+             . map ( |method| { 
597+                 self . builder_struct ( method,  TagStyle :: Separate ,  has_inner) 
598+             } ) 
584599            . collect :: < Result < Vec < _ > > > ( ) ?; 
585600
586601        let  ( traits_and_impls,  trait_preludes)  =
0 commit comments