Skip to content

Commit

Permalink
process: fix raw_arg not showing up in docs (#5865)
Browse files Browse the repository at this point in the history
  • Loading branch information
joriskleiber authored Jul 16, 2023
1 parent e52d56e commit 6166e9b
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 14 deletions.
12 changes: 12 additions & 0 deletions tokio/src/macros/cfg.rs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,18 @@ macro_rules! cfg_windows {
}
}

/// Enables unstable Windows-specific code.
/// Use this macro instead of `cfg(windows)` to generate docs properly.
macro_rules! cfg_unstable_windows {
($($item:item)*) => {
$(
#[cfg(all(any(all(doc, docsrs), windows), tokio_unstable))]
#[cfg_attr(docsrs, doc(cfg(all(windows, tokio_unstable))))]
$item
)*
}
}

/// Enables enter::block_on.
macro_rules! cfg_block_on {
($($item:item)*) => {
Expand Down
29 changes: 15 additions & 14 deletions tokio/src/process/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -400,20 +400,21 @@ impl Command {
self
}

/// Append literal text to the command line without any quoting or escaping.
///
/// This is useful for passing arguments to `cmd.exe /c`, which doesn't follow
/// `CommandLineToArgvW` escaping rules.
///
/// **Note**: This is an [unstable API][unstable] but will be stabilised once
/// tokio's MSRV is sufficiently new. See [the documentation on
/// unstable features][unstable] for details about using unstable features.
#[cfg(windows)]
#[cfg(tokio_unstable)]
#[cfg_attr(docsrs, doc(cfg(all(windows, tokio_unstable))))]
pub fn raw_arg<S: AsRef<OsStr>>(&mut self, text_to_append_as_is: S) -> &mut Command {
self.std.raw_arg(text_to_append_as_is);
self
cfg_unstable_windows! {
/// Append literal text to the command line without any quoting or escaping.
///
/// This is useful for passing arguments to `cmd.exe /c`, which doesn't follow
/// `CommandLineToArgvW` escaping rules.
///
/// **Note**: This is an [unstable API][unstable] but will be stabilised once
/// tokio's MSRV is sufficiently new. See [the documentation on
/// unstable features][unstable] for details about using unstable features.
///
/// [unstable]: crate#unstable-features
pub fn raw_arg<S: AsRef<OsStr>>(&mut self, text_to_append_as_is: S) -> &mut Command {
self.std.raw_arg(text_to_append_as_is);
self
}
}

/// Inserts or updates an environment variable mapping.
Expand Down

0 comments on commit 6166e9b

Please sign in to comment.