fn render_signature(x: &StarFun) -> Option<TokenStream> {
    if let StarFunSource::Argument(args_count) = x.source {
        let name_str = ident_string(&x.name);
        let sig_args = x.args.map(render_signature_arg);
        Some(quote! {
            #[allow(unused_mut)]
            let mut __signature = starlark::eval::ParametersSpec::with_capacity(#name_str.to_owned(), #args_count);
            #( #sig_args )*
        })
    } else {
        None
    }
}
// Given the arguments, create a variable `signature` with a `ParametersSpec` object.
// Or return None if you don't need a signature
Given the arguments, create a variable `signature` with a `ParametersSpec` object.
Or return None if you don't need a signature
Given the arguments create a variable ` signature ` with a ` ParametersSpec ` object . Or return None if you don ' t need a signature
fn render_signature(x: &StarFun) -> Option<TokenStream> {
    if let StarFunSource::Argument(args_count) = x.source {
        let name_str = ident_string(&x.name);
        let sig_args = x.args.map(render_signature_arg);
        Some(quote! {
            #[allow(unused_mut)]
            let mut __signature = starlark::eval::ParametersSpec::with_capacity(#name_str.to_owned(), #args_count);
            #( #sig_args )*
        })
    } else {
        None
    }
}
fn render_signature ( x : & StarFun ) -> Option < TokenStream > { if let StarFunSource :: Argument ( args_count ) = x . source { let name_str = ident_string ( & x . name ) ; let sig_args = x . args . map ( render_signature_arg ) ; Some ( quote ! { [ allow ( unused_mut ) ] let mut __signature starlark eval ParametersSpec with_capacity ( name_str to_owned ( ) args_count ) ( sig_args ) } ) } else { None } }
Given the arguments, create a variable `signature` with a `ParametersSpec` object.
Given the arguments create a variable ` signature ` with a ` ParametersSpec ` object .
x
&StarFun
x
&StarFun