feat(build): Better support for custom codecs (#999)
BREAKING CHANGE: `CODEC_PATH` moved from const to fn
This commit is contained in:
@@ -366,7 +366,7 @@ fn generate_unary<T: Method>(
|
||||
method_ident: Ident,
|
||||
server_trait: Ident,
|
||||
) -> TokenStream {
|
||||
let codec_name = syn::parse_str::<syn::Path>(T::CODEC_PATH).unwrap();
|
||||
let codec_name = syn::parse_str::<syn::Path>(method.codec_path()).unwrap();
|
||||
|
||||
let service_ident = quote::format_ident!("{}Svc", method.identifier());
|
||||
|
||||
@@ -415,7 +415,7 @@ fn generate_server_streaming<T: Method>(
|
||||
method_ident: Ident,
|
||||
server_trait: Ident,
|
||||
) -> TokenStream {
|
||||
let codec_name = syn::parse_str::<syn::Path>(T::CODEC_PATH).unwrap();
|
||||
let codec_name = syn::parse_str::<syn::Path>(method.codec_path()).unwrap();
|
||||
|
||||
let service_ident = quote::format_ident!("{}Svc", method.identifier());
|
||||
|
||||
@@ -470,7 +470,7 @@ fn generate_client_streaming<T: Method>(
|
||||
let service_ident = quote::format_ident!("{}Svc", method.identifier());
|
||||
|
||||
let (request, response) = method.request_response_name(proto_path, compile_well_known_types);
|
||||
let codec_name = syn::parse_str::<syn::Path>(T::CODEC_PATH).unwrap();
|
||||
let codec_name = syn::parse_str::<syn::Path>(method.codec_path()).unwrap();
|
||||
|
||||
quote! {
|
||||
#[allow(non_camel_case_types)]
|
||||
@@ -517,7 +517,7 @@ fn generate_streaming<T: Method>(
|
||||
method_ident: Ident,
|
||||
server_trait: Ident,
|
||||
) -> TokenStream {
|
||||
let codec_name = syn::parse_str::<syn::Path>(T::CODEC_PATH).unwrap();
|
||||
let codec_name = syn::parse_str::<syn::Path>(method.codec_path()).unwrap();
|
||||
|
||||
let service_ident = quote::format_ident!("{}Svc", method.identifier());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user