fn generate_fn_ptr_call(signature: &TypeBareFn, fn_name: Ident) -> Expr {
            Expr::Call(ExprCall {
                attrs: vec![],
                func: Box::new(Expr::Path(ExprPath {
                    attrs: vec![],
                    qself: None,
                    path: Path {
                        leading_colon: None,
                        segments: {
                            let mut p = Punctuated::new();
                            let ps = PathSegment {
                                ident: fn_name,
                                arguments: Default::default(),
                            };
                            p.push(ps);
                            p
                        },
                    },
                })),
                paren_token: Paren {
                    span: Span::call_site(),
                },
                args: signature
                    .inputs
                    .iter()
                    .map(|a| {
                        Expr::Path(ExprPath {
                            attrs: vec![],
                            qself: None,
                            path: Path {
                                leading_colon: None,
                                segments: {
                                    let mut p = Punctuated::new();
                                    let ps = PathSegment {
                                        ident: a.name.clone().unwrap().0,
                                        arguments: Default::default(),
                                    };
                                    p.push(ps);
                                    p
                                },
                            },
                        })
                    })
                    .collect(),
            })
        }
/// Generates the actual function pointer call in the body of a method in `impl Reaper`
Generates the actual function pointer call in the body of a method in `impl Reaper`
Generates the actual function pointer call in the body of a method in ` impl Reaper `
fn generate_fn_ptr_call(signature: &TypeBareFn, fn_name: Ident) -> Expr {
            Expr::Call(ExprCall {
                attrs: vec![],
                func: Box::new(Expr::Path(ExprPath {
                    attrs: vec![],
                    qself: None,
                    path: Path {
                        leading_colon: None,
                        segments: {
                            let mut p = Punctuated::new();
                            let ps = PathSegment {
                                ident: fn_name,
                                arguments: Default::default(),
                            };
                            p.push(ps);
                            p
                        },
                    },
                })),
                paren_token: Paren {
                    span: Span::call_site(),
                },
                args: signature
                    .inputs
                    .iter()
                    .map(|a| {
                        Expr::Path(ExprPath {
                            attrs: vec![],
                            qself: None,
                            path: Path {
                                leading_colon: None,
                                segments: {
                                    let mut p = Punctuated::new();
                                    let ps = PathSegment {
                                        ident: a.name.clone().unwrap().0,
                                        arguments: Default::default(),
                                    };
                                    p.push(ps);
                                    p
                                },
                            },
                        })
                    })
                    .collect(),
            })
        }
fn generate_fn_ptr_call ( signature : & TypeBareFn , fn_name : Ident ) -> Expr { Expr :: Call ( ExprCall { attrs : vec ! [ ] , func : Box :: new ( Expr :: Path ( ExprPath { attrs : vec ! [ ] , qself : None , path : Path { leading_colon : None , segments : { let mut p = Punctuated :: new ( ) ; let ps = PathSegment { ident : fn_name , arguments : Default :: default ( ) , } ; p . push ( ps ) ; p } , } , } ) ) , paren_token : Paren { span : Span :: call_site ( ) , } , args : signature . inputs . iter ( ) . map ( | a | { Expr :: Path ( ExprPath { attrs : vec ! [ ] , qself : None , path : Path { leading_colon : None , segments : { let mut p = Punctuated :: new ( ) ; let ps = PathSegment { ident : a . name . clone ( ) . unwrap ( ) . 0 , arguments : Default :: default ( ) , } ; p . push ( ps ) ; p } , } , } ) } ) . collect ( ) , } ) }
Generates the actual function pointer call in the body of a method in `impl Reaper`
Generates the actual function pointer call in the body of a method in ` impl Reaper `
signature
&TypeBareFn
fn_name
Ident
signature
&TypeBareFn
fn_name
Ident