derive: remove generics injection for write_header()

With the integrations gone, this feature is not needed anymore.
This commit is contained in:
René Kijewski 2024-11-25 21:45:37 +01:00
parent 8ec8f21e66
commit 45aac915b3
2 changed files with 5 additions and 22 deletions

View File

@ -163,7 +163,7 @@ impl<'a, 'h> Generator<'a, 'h> {
buf: &mut Buffer, buf: &mut Buffer,
target: &str, target: &str,
) -> Result<usize, CompileError> { ) -> Result<usize, CompileError> {
write_header(self.input.ast, buf, target, None); write_header(self.input.ast, buf, target);
buf.write( buf.write(
"fn render_into<RinjaW>(&self, writer: &mut RinjaW) -> rinja::Result<()>\ "fn render_into<RinjaW>(&self, writer: &mut RinjaW) -> rinja::Result<()>\
where \ where \

View File

@ -10,25 +10,8 @@ pub(crate) fn impl_everything(ast: &DeriveInput, buf: &mut Buffer) {
} }
/// Writes header for the `impl` for `TraitFromPathName` or `Template` for the given item /// Writes header for the `impl` for `TraitFromPathName` or `Template` for the given item
pub(crate) fn write_header( pub(crate) fn write_header(ast: &DeriveInput, buf: &mut Buffer, target: impl Display) {
ast: &DeriveInput, let (impl_generics, orig_ty_generics, where_clause) = ast.generics.split_for_impl();
buf: &mut Buffer,
target: impl Display,
params: Option<Vec<syn::GenericParam>>,
) {
let mut generics;
let (impl_generics, orig_ty_generics, where_clause) = if let Some(params) = params {
generics = ast.generics.clone();
for param in params {
generics.params.push(param);
}
let (_, orig_ty_generics, _) = ast.generics.split_for_impl();
let (impl_generics, _, where_clause) = generics.split_for_impl();
(impl_generics, orig_ty_generics, where_clause)
} else {
ast.generics.split_for_impl()
};
let ident = &ast.ident; let ident = &ast.ident;
buf.write(format_args!( buf.write(format_args!(
@ -51,7 +34,7 @@ fn impl_display(ast: &DeriveInput, buf: &mut Buffer) {
", ",
quote!(#ident), quote!(#ident),
)); ));
write_header(ast, buf, "rinja::helpers::core::fmt::Display", None); write_header(ast, buf, "rinja::helpers::core::fmt::Display");
buf.write( buf.write(
"\ "\
#[inline]\ #[inline]\
@ -68,7 +51,7 @@ fn impl_display(ast: &DeriveInput, buf: &mut Buffer) {
/// Implement `FastWritable` for the given item. /// Implement `FastWritable` for the given item.
fn impl_fast_writable(ast: &DeriveInput, buf: &mut Buffer) { fn impl_fast_writable(ast: &DeriveInput, buf: &mut Buffer) {
write_header(ast, buf, "rinja::filters::FastWritable", None); write_header(ast, buf, "rinja::filters::FastWritable");
buf.write( buf.write(
"\ "\
#[inline]\ #[inline]\