pub fn create_marshalls(ecx: &mut ExtCtxt,
                        impl_items: &[ImplItem]) -> Vec<ImplItem> {
    let mut marshall_fns = Vec::new();

    for impl_item in impl_items.iter() {
        match impl_item.node {
            ImplItemKind::Method(ref sig, ..) => {
                let original_name = impl_item.ident;
                let common_marshall_fn =
                    create_common_marshall(ecx, original_name, sig);
                marshall_fns.push(common_marshall_fn);

                for &lang in LANGUAGES {
                    let lang_marshall_fn = create_lang_marshall(ecx, original_name, sig, lang);
                    marshall_fns.push(lang_marshall_fn);
                }
            },
            _ => (),
        }
    }

    marshall_fns
}
/// Creates all of the marshalling methods for a set of impl items.
Creates all of the marshalling methods for a set of impl items.
Creates all of the marshalling methods for a set of impl items .
pub fn create_marshalls(ecx: &mut ExtCtxt,
                        impl_items: &[ImplItem]) -> Vec<ImplItem> {
    let mut marshall_fns = Vec::new();
    for impl_item in impl_items.iter() {
        match impl_item.node {
            ImplItemKind::Method(ref sig, ..) => {
                let original_name = impl_item.ident;
                let common_marshall_fn =
                    create_common_marshall(ecx, original_name, sig);
                marshall_fns.push(common_marshall_fn);
                for &lang in LANGUAGES {
                    let lang_marshall_fn = create_lang_marshall(ecx, original_name, sig, lang);
                    marshall_fns.push(lang_marshall_fn);
                }
            },
            _ => (),
        }
    }
    marshall_fns
}
pub fn create_marshalls ( ecx : & mut ExtCtxt , impl_items : & [ ImplItem ] ) -> Vec < ImplItem > { let mut marshall_fns = Vec :: new ( ) ; for impl_item in impl_items . iter ( ) { match impl_item . node { ImplItemKind :: Method ( ref sig , .. ) => { let original_name = impl_item . ident ; let common_marshall_fn = create_common_marshall ( ecx , original_name , sig ) ; marshall_fns . push ( common_marshall_fn ) ; for & lang in LANGUAGES { let lang_marshall_fn = create_lang_marshall ( ecx , original_name , sig , lang ) ; marshall_fns . push ( lang_marshall_fn ) ; } } , _ => ( ) , } } marshall_fns }
Creates all of the marshalling methods for a set of impl items.
Creates all of the marshalling methods for a set of impl items .
ecx
&mut ExtCtxt
impl_items
&[ImplItem]
ecx
&mut ExtCtxt
impl_items
&[ImplItem]