2022-12-14 10:07:49

by Finn Behrens

[permalink] [raw]
Subject: [PATCH] rust: prelude: prevent doc inline of external imports

This shows exactly where the items are from, previously the items from
macros, alloc and core where shown as a decleration from the kernel crate,
this shows the correct path.

Signed-off-by: Finn Behrens <[email protected]>
---
rust/kernel/prelude.rs | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/rust/kernel/prelude.rs b/rust/kernel/prelude.rs
index 7a90249ee9b9..917721e791b6 100644
--- a/rust/kernel/prelude.rs
+++ b/rust/kernel/prelude.rs
@@ -11,15 +11,21 @@
//! use kernel::prelude::*;
//! ```

+#[doc(no_inline)]
pub use core::pin::Pin;

+#[doc(no_inline)]
pub use alloc::{boxed::Box, vec::Vec};

+#[doc(no_inline)]
pub use macros::{module, vtable};

pub use super::build_assert;

-pub use super::{dbg, pr_alert, pr_crit, pr_debug, pr_emerg, pr_err, pr_info, pr_notice, pr_warn};
+// super::std_vendor is hidden, which makes the macro inline for some reason
+#[doc(no_inline)]
+pub use super::dbg;
+pub use super::{pr_alert, pr_crit, pr_debug, pr_emerg, pr_err, pr_info, pr_notice, pr_warn};

pub use super::static_assert;

--
2.31.1


2022-12-21 09:45:13

by Vincenzo Palazzo

[permalink] [raw]
Subject: Re: [PATCH] rust: prelude: prevent doc inline of external imports

IMOHO this make sense.

Reviewed-by: Vincenzo Palazzo <[email protected]>

On Wed Dec 14, 2022 at 10:34 AM CET, Finn Behrens wrote:
> This shows exactly where the items are from, previously the items from
> macros, alloc and core where shown as a decleration from the kernel crate,
> this shows the correct path.
>
> Signed-off-by: Finn Behrens <[email protected]>
> ---
> rust/kernel/prelude.rs | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/rust/kernel/prelude.rs b/rust/kernel/prelude.rs
> index 7a90249ee9b9..917721e791b6 100644
> --- a/rust/kernel/prelude.rs
> +++ b/rust/kernel/prelude.rs
> @@ -11,15 +11,21 @@
> //! use kernel::prelude::*;
> //! ```
>
> +#[doc(no_inline)]
> pub use core::pin::Pin;
>
> +#[doc(no_inline)]
> pub use alloc::{boxed::Box, vec::Vec};
>
> +#[doc(no_inline)]
> pub use macros::{module, vtable};
>
> pub use super::build_assert;
>
> -pub use super::{dbg, pr_alert, pr_crit, pr_debug, pr_emerg, pr_err, pr_info, pr_notice, pr_warn};
> +// super::std_vendor is hidden, which makes the macro inline for some reason
> +#[doc(no_inline)]
> +pub use super::dbg;
> +pub use super::{pr_alert, pr_crit, pr_debug, pr_emerg, pr_err, pr_info, pr_notice, pr_warn};
>
> pub use super::static_assert;
>
> --
> 2.31.1

2023-01-16 23:54:08

by Miguel Ojeda

[permalink] [raw]
Subject: Re: [PATCH] rust: prelude: prevent doc inline of external imports

On Wed, Dec 14, 2022 at 10:35 AM Finn Behrens <[email protected]> wrote:
>
> This shows exactly where the items are from, previously the items from
> macros, alloc and core where shown as a decleration from the kernel crate,
> this shows the correct path.

Applied to rust-next, thanks all! (as discussed, I added the Link on
my side, plus fixed a couple typos and the comment style).

Cheers,
Miguel