diff options
| author | bors <bors@rust-lang.org> | 2018-09-05 00:37:03 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2018-09-05 00:37:03 +0000 |
| commit | f68b7cc59896427d378c9e3bae6f5fd7a1f1fad9 (patch) | |
| tree | e7c43bb48abe1a3fe6c8a8d7fa2de19f5b644958 /src/test/incremental/thinlto | |
| parent | 1c2e17f4e3a2070a7f703f51e29c1c388ef703b6 (diff) | |
| parent | e1bd0e7b4e9009ada545580b2698a11631f1f597 (diff) | |
| download | rust-f68b7cc59896427d378c9e3bae6f5fd7a1f1fad9.tar.gz rust-f68b7cc59896427d378c9e3bae6f5fd7a1f1fad9.zip | |
Auto merge of #53027 - matklad:once_is_completed, r=alexcrichton
Allow to check if sync::Once is already initialized Hi! I propose to expose a way to check if a `Once` instance is initialized. I need it in `once_cell`. `OnceCell` is effetively a pair of `(Once, UnsafeCell<Option<T>>)`, which can set the `T` only once. Because I can't check if `Once` is initialized, I am forced to add an indirection and check the value of ptr instead: https://github.com/matklad/once_cell/blob/8127a81976c3f2f4c0860562c3f14647ebc025c0/src/lib.rs#L423-L429 https://github.com/matklad/once_cell/blob/8127a81976c3f2f4c0860562c3f14647ebc025c0/src/lib.rs#L457-L461 The `parking_lot`'s version of `Once` exposes the state as an enum: https://docs.rs/parking_lot/0.6.3/parking_lot/struct.Once.html#method.state. I suggest, for now, just to add a simple `bool` function: this fits my use-case perfectly, exposes less implementation details, and is forward-compatible with more fine-grained state checking.
Diffstat (limited to 'src/test/incremental/thinlto')
0 files changed, 0 insertions, 0 deletions
