Skip to content

Commit

Permalink
Delete docs for vestigial AsyncConfigBuilder
Browse files Browse the repository at this point in the history
This struct seems to be a remnant of a previous approach to async.

It cannot be used, and the documentation was lies.  Eg:

warning: unresolved link to `AsyncConfigBuilder::build`
   --> src/builder.rs:116:43
    |
116 | /// To obtain a [`Config`] call [`build`](AsyncConfigBuilder::build) or [`build_cloned`](AsyncConfigBuilder::build_cloned)
    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `AsyncConfigBuilder` has no field or associated item named `build`
    |
    = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default

TRhere isn't a build method.  There are, in fact, no methods at all.

Signed-off-by: Ian Jackson <[email protected]>
  • Loading branch information
ijackson committed Oct 23, 2023
1 parent e95b9dd commit 96ee2f0
Showing 1 changed file with 11 additions and 17 deletions.
28 changes: 11 additions & 17 deletions src/builder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -103,23 +103,17 @@ pub struct DefaultState {
sources: Vec<Box<dyn Source + Send + Sync>>,
}

/// The asynchronous configuration builder.
///
/// Similar to a [`ConfigBuilder`] it maintains a set of defaults, a set of sources, and overrides.
///
/// Defaults do not override anything, sources override defaults, and overrides override anything else.
/// Within those three groups order of adding them at call site matters - entities added later take precedence.
///
/// For more detailed description and examples see [`ConfigBuilder`].
/// [`AsyncConfigBuilder`] is just an extension of it that takes async functions into account.
///
/// To obtain a [`Config`] call [`build`](AsyncConfigBuilder::build) or [`build_cloned`](AsyncConfigBuilder::build_cloned)
///
/// # Example
/// Since this library does not implement any [`AsyncSource`] an example in rustdocs cannot be given.
/// Detailed explanation about why such a source is not implemented is in [`AsyncSource`]'s documentation.
///
/// Refer to [`ConfigBuilder`] for similar API sample usage or to the examples folder of the crate, where such a source is implemented.
// Dummy useless struct
//
// This struct exists only to avoid the semver break
// which would be implied by removing it.
//
// This struct cannot be used for anything useful.
// (Nor can it be extended without a semver break, either.)
//
// In a future release, we should have
// type AsyncConfigBuilder = ConfigBuilder<AsyncState>;
#[doc(hidden)]
#[derive(Debug, Clone, Default)]
pub struct AsyncConfigBuilder {}

Expand Down

0 comments on commit 96ee2f0

Please sign in to comment.