fn finalize()

in dubbo-build/src/prost.rs [158:186]


    fn finalize(&mut self, buf: &mut String) {
        if self.builder.build_client && !self.clients.is_empty() {
            let clients = &self.clients;

            let client_services = quote::quote! {
                #clients
            };

            let ast: syn::File = syn::parse2(client_services).expect("invalid tokenstream");
            let code = prettyplease::unparse(&ast);
            buf.push_str(&code);

            self.clients = TokenStream::default();
        }

        if self.builder.build_server && !self.servers.is_empty() {
            let servers = &self.servers;

            let server_services = quote::quote! {
                #servers
            };

            let ast: syn::File = syn::parse2(server_services).expect("invalid tokenstream");
            let code = prettyplease::unparse(&ast);
            buf.push_str(&code);

            self.servers = TokenStream::default();
        }
    }