File tree Expand file tree Collapse file tree 1 file changed +4
-5
lines changed Expand file tree Collapse file tree 1 file changed +4
-5
lines changed Original file line number Diff line number Diff line change 84
84
//!
85
85
//! ## `LazyCell<T, F>`
86
86
//!
87
- //! A common pattern with OnceCell is, for a given OnceCell, to use a specific function on every
87
+ //! A common pattern with OnceCell is, for a given OnceCell, to use the same function on every
88
88
//! call to [`OnceCell::get_or_init`] with that cell. This is what is offered by [`LazyCell`],
89
- //! which pairs cells of `T` with functions of `F`, and calls `F` before it yields `&T`.
89
+ //! which pairs cells of `T` with functions of `F`, and always calls `F` before it yields `&T`.
90
90
//! This happens implicitly by simply attempting to dereference the LazyCell to get its contents,
91
91
//! so its use is much more transparent with a place which has been initialized by a constant.
92
92
//!
93
93
//! More complicated patterns that don't fit this description can be built on `OnceCell<T>` instead.
94
94
//!
95
- //! `LazyCell` provides the following methods:
96
- //!
97
- //! - [`LazyCell::force`]: initialize the LazyCell and return a reference.
95
+ //! `LazyCell` works by providing an implementation of `impl Deref` that calls the function,
96
+ //! so you can just use it by dereference (e.g. `*lazy_cell` or `lazy_cell.deref()`).
98
97
//!
99
98
//! The corresponding [`Sync`] version of `LazyCell<T, F>` is [`LazyLock<T, F>`].
100
99
//!
You can’t perform that action at this time.
0 commit comments