diff options
author | Varphone Wong <varphone@qq.com> | 2020-08-02 09:48:40 +0800 |
---|---|---|
committer | Emilio Cobos Álvarez <emilio@crisal.io> | 2020-08-03 18:29:07 +0200 |
commit | ff3698189cb44f900e81d2b92131b1c191acf4de (patch) | |
tree | 89b8c03fe5f29b8afebf77ead0962f1f8b217d06 /src/codegen/mod.rs | |
parent | f56fbcef788098155a10ef455284e218fe15bc7a (diff) |
Add --no-debug <regex> flag
Diffstat (limited to 'src/codegen/mod.rs')
-rw-r--r-- | src/codegen/mod.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/codegen/mod.rs b/src/codegen/mod.rs index 20bf54c4..00aa68f3 100644 --- a/src/codegen/mod.rs +++ b/src/codegen/mod.rs @@ -112,7 +112,7 @@ bitflags! { fn derives_of_item(item: &Item, ctx: &BindgenContext) -> DerivableTraits { let mut derivable_traits = DerivableTraits::empty(); - if item.can_derive_debug(ctx) { + if item.can_derive_debug(ctx) && !item.annotations().disallow_debug() { derivable_traits |= DerivableTraits::DEBUG; } @@ -1885,8 +1885,10 @@ impl CodeGenerator for CompInfo { let derivable_traits = derives_of_item(item, ctx); if !derivable_traits.contains(DerivableTraits::DEBUG) { - needs_debug_impl = - ctx.options().derive_debug && ctx.options().impl_debug + needs_debug_impl = ctx.options().derive_debug && + ctx.options().impl_debug && + !ctx.no_debug_by_name(item) && + !item.annotations().disallow_debug(); } if !derivable_traits.contains(DerivableTraits::DEFAULT) { |