diff options
| author | Laurenz <laurmaedje@gmail.com> | 2024-01-17 14:51:42 +0100 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2024-01-17 17:32:51 +0100 |
| commit | cb69648e2f048e90ca819e147927a00831cef119 (patch) | |
| tree | 0c006a467d25c5c65cbf6bec6f987ecd8b2e7dba /crates/typst-macros | |
| parent | 21585e03cfcc47ad283c162e4a2959ea5f8fbd6f (diff) | |
Add a few manual Debug impls to elements
Diffstat (limited to 'crates/typst-macros')
| -rw-r--r-- | crates/typst-macros/src/elem.rs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/crates/typst-macros/src/elem.rs b/crates/typst-macros/src/elem.rs index 6ab437cd..441cb4ad 100644 --- a/crates/typst-macros/src/elem.rs +++ b/crates/typst-macros/src/elem.rs @@ -322,10 +322,12 @@ fn create(element: &Elem) -> Result<TokenStream> { let partial_eq_impl = element.unless_capability("PartialEq", || create_partial_eq_impl(element)); let repr_impl = element.unless_capability("Repr", || create_repr_impl(element)); + let derive_debug = element.unless_capability("Debug", || quote! { #[derive(Debug)] }); Ok(quote! { #[doc = #docs] - #[derive(Debug, Clone, Hash)] + #derive_debug + #[derive(Clone, Hash)] #[allow(clippy::derived_hash_with_manual_eq)] #vis struct #ident { #(#fields,)* @@ -974,7 +976,8 @@ fn create_repr_impl(element: &Elem) -> TokenStream { /// Creates the element's casting vtable. fn create_capable_impl(element: &Elem) -> TokenStream { // Forbidden capabilities (i.e capabilities that are not object safe). - const FORBIDDEN: &[&str] = &["Construct", "PartialEq", "Hash", "LocalName", "Repr"]; + const FORBIDDEN: &[&str] = + &["Construct", "PartialEq", "Hash", "LocalName", "Repr", "Debug"]; let ident = &element.ident; let relevant = element |
