From a0b50bcf1e18c5d909e8791e06284b9787076e8b Mon Sep 17 00:00:00 2001 From: Jonas Schievink Date: Mon, 5 Apr 2021 16:59:03 +0200 Subject: Make `impl_internable!` macro public --- crates/hir_def/src/intern.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'crates/hir_def/src') diff --git a/crates/hir_def/src/intern.rs b/crates/hir_def/src/intern.rs index 2467e9299..0d5419be5 100644 --- a/crates/hir_def/src/intern.rs +++ b/crates/hir_def/src/intern.rs @@ -185,7 +185,10 @@ pub trait Internable: Hash + Eq + 'static { fn storage() -> &'static InternStorage; } -macro_rules! impl_internable { +/// Implements `Internable` for a given list of types, making them usable with `Interned`. +#[macro_export] +#[doc(hidden)] +macro_rules! _impl_internable { ( $($t:path),+ $(,)? ) => { $( impl Internable for $t { fn storage() -> &'static InternStorage { @@ -196,10 +199,12 @@ macro_rules! impl_internable { )+ }; } +pub use crate::_impl_internable as impl_internable; + impl_internable!( crate::type_ref::TypeRef, crate::type_ref::TraitRef, crate::path::ModPath, GenericParams, - str + str, ); -- cgit v1.2.3