summary refs log tree commit diff
path: root/src/libcore/cell.rs
AgeCommit message (Collapse)AuthorLines
2017-11-06Add RefCell<T>::replace_withHavvy-13/+38
2017-10-26Bump to 1.23 and update bootstrapAlex Crichton-3/+3
This commit updates the bootstrap compiler, bumps the version to 1.23, updates Cargo, updates books, and updates crates.io dependencies
2017-09-16change #![feature(const_fn)] to specific gatesAlex Burka-0/+3
2017-08-24Fix inconsistent doc headingslukaramu-2/+2
This fixes headings reading "Unsafety" and "Example", they should be "Safety" and "Examples" according to RFC 1574.
2017-08-17Fixed typo in RefCell::get_mutAnthony Clays-1/+1
2017-08-14Auto merge of #43574 - notriddle:master, r=sfacklerbors-0/+53
Implement `RefCell::replace` and `RefCell::swap` Tracking issue: #43570
2017-08-08Clarify the language around `RefCell::swap`Michael Howell-1/+1
2017-08-02Change "Example" to "Examples" in the doc commentsMichael Howell-2/+2
2017-07-31Implement `RefCell::replace` and `RefCell::swap`Michael Howell-0/+53
2017-07-24s/immutable/my_structTymoteusz Jankowski-3/+3
2017-07-24empty linesTymoteusz Jankowski-0/+5
2017-07-24ci fix?Tymoteusz Jankowski-5/+0
2017-07-24review fixesTymoteusz Jankowski-3/+3
2017-07-24add proseTymoteusz Jankowski-1/+6
2017-07-23Add simple docs example for struct CellTymoteusz Jankowski-0/+23
2017-07-10Correct some stability attributesOliver Middleton-2/+2
These show up in rustdoc so need to be correct.
2017-06-22Ensure Guard types impl Display & DebugChris MacNaughton-0/+14
Fixes #24372
2017-06-08doc: a more complete explanation, and a better exampleTshepang Lekhonkhobe-5/+5
2017-05-20Correct some stability versionsOliver Middleton-1/+1
These were found by running tidy on stable versions of rust and finding features stabilised with the wrong version numbers.
2017-05-04fallout from NonZero/Unique/Shared changesAlexis Beingessner-3/+1
2017-04-24Add more explanation on RefCell::get_mutGuillaume Gomez-0/+9
2017-04-20Remove RefCell::borrow_stateJosh Stone-46/+0
[unstable, deprecated since 1.15.0]
2017-04-20Remove {Cell,RefCell}::as_unsafe_cellJosh Stone-43/+0
[unstable, deprecated since 1.12.0]
2017-03-17Stabilize move_cell feature, closes #39264Aaron Turon-8/+4
2017-02-15Rollup merge of #39793 - RalfJung:cell, r=alexcrichtonCorey Farwell-62/+62
Allow more Cell methods for non-Copy types Clearly, `get_mut` is safe for any `T`. The other two only provide unsafe pointers anyway. The only remaining inherent method with `Copy` bound is `get`, which sounds about right to me. I found the order if `impl` blocks in the file a little weird (first inherent impl, then some trait impls, then another inherent impl), but didn't change it to keep the diff small. Contributes to #39264
2017-02-14Remove Copy bound from some Cell trait implsRalf Jung-2/+2
Contributes to #39264
2017-02-13Allow more Cell methods for non-Copy typesRalf Jung-60/+60
Contributes to #39264
2017-02-11Add `swap` method for `Cell`Charlie Fan-0/+27
2017-02-01Update cell docsWesley Wiser-5/+13
2017-01-26Move stability attributes per feedbackWesley Wiser-2/+3
2017-01-24Extend Cell to work with non-Copy typesWesley Wiser-36/+94
Part of #39264
2016-12-16Address falloutAaron Turon-0/+2
2016-12-15Deprecate std::cell::RefCell::borrow_stateAaron Turon-0/+2
2016-12-15Stabilize std::cell::Ref::cloneAaron Turon-3/+1
2016-10-03std: Stabilize and deprecate APIs for 1.13Alex Crichton-25/+21
This commit is intended to be backported to the 1.13 branch, and works with the following APIs: Stabilized * `i32::checked_abs` * `i32::wrapping_abs` * `i32::overflowing_abs` * `RefCell::try_borrow` * `RefCell::try_borrow_mut` * `DefaultHasher` * `DefaultHasher::new` * `DefaultHasher::default` Deprecated * `BinaryHeap::push_pop` * `BinaryHeap::replace` * `SipHash13` * `SipHash24` * `SipHasher` - use `DefaultHasher` instead in the `std::collections::hash_map` module Closes #28147 Closes #34767 Closes #35057 Closes #35070
2016-09-11Documentation of what does for each typeathulappadan-0/+3
2016-08-30Rollup merge of #35895 - F001:patch-1, r=steveklabnikGuillaume Gomez-10/+39
Fix documentation in cell mod The implementation of Rc type in this doc is outdated.
2016-08-26Fix documentation in cell modchangchun.fan-10/+39
2016-08-24Use `#[prelude_import]` in `libcore`.Jeffrey Seyfried-10/+3
2016-08-23Auto merge of #35627 - apasel422:coerce-cell, r=alexcrichtonbors-0/+16
Implement `CoerceUnsized` for `{Cell, RefCell, UnsafeCell}` These impls are analogous to the one for `NonZero`. It's occasionally useful to be able to coerce the cell types when they're being used inside another abstraction. See Manishearth/rust-gc#17 for an example. r? @eddyb
2016-08-19std: Stabilize APIs for the 1.12 releaseAlex Crichton-0/+36
Stabilized * `Cell::as_ptr` * `RefCell::as_ptr` * `IpAddr::is_{unspecified,loopback,multicast}` * `Ipv6Addr::octets` * `LinkedList::contains` * `VecDeque::contains` * `ExitStatusExt::from_raw` - both on Unix and Windows * `Receiver::recv_timeout` * `RecvTimeoutError` * `BinaryHeap::peek_mut` * `PeekMut` * `iter::Product` * `iter::Sum` * `OccupiedEntry::remove_entry` * `VacantEntry::into_key` Deprecated * `Cell::as_unsafe_cell` * `RefCell::as_unsafe_cell` * `OccupiedEntry::remove_pair` Closes #27708 cc #27709 Closes #32313 Closes #32630 Closes #32713 Closes #34029 Closes #34392 Closes #34285 Closes #34529
2016-08-14Implement `CoerceUnsized` for `{Cell, RefCell, UnsafeCell}`Andrew Paseltiner-0/+16
2016-08-14Rollup merge of #35392 - malbarbo:cell-from, r=brsonEduard-Mihai Burtescu-0/+22
Implement From for Cell, RefCell and UnsafeCell Considering that `From` is implemented for `Box`, `Rc` and `Arc`, it seems [reasonable](https://internals.rust-lang.org/t/implementing-from-t-for-other-std-types/3744) to implement it for `Cell`, `RefCell` and `UnsafeCell`.
2016-08-08Implement `RefCell::{try_borrow, try_borrow_mut}`Andrew Paseltiner-9/+116
2016-08-05Implement From for Cell, RefCell and UnsafeCellMarco A L Barbosa-0/+22
2016-07-26Clarify UnsafeCell docs; fix #34496Manish Goregaokar-0/+19
2016-07-11Add missing examples for std::cell typesGuillaume Gomez-0/+49
2016-07-03std: Stabilize APIs for the 1.11.0 releaseAlex Crichton-2/+2
Although the set of APIs being stabilized this release is relatively small, the trains keep going! Listed below are the APIs in the standard library which have either transitioned from unstable to stable or those from unstable to deprecated. Stable * `BTreeMap::{append, split_off}` * `BTreeSet::{append, split_off}` * `Cell::get_mut` * `RefCell::get_mut` * `BinaryHeap::append` * `{f32, f64}::{to_degrees, to_radians}` - libcore stabilizations mirroring past libstd stabilizations * `Iterator::sum` * `Iterator::product` Deprecated * `{f32, f64}::next_after` * `{f32, f64}::integer_decode` * `{f32, f64}::ldexp` * `{f32, f64}::frexp` * `num::One` * `num::Zero` Added APIs (all unstable) * `iter::Sum` * `iter::Product` * `iter::Step` - a few methods were added to accomodate deprecation of One/Zero Removed APIs * `From<Range<T>> for RangeInclusive<T>` - everything about `RangeInclusive` is unstable Closes #27739 Closes #27752 Closes #32526 Closes #33444 Closes #34152 cc #34529 (new tracking issue)
2016-06-01Auto merge of #33853 - alexcrichton:remove-deprecated, r=aturonbors-75/+0
std: Clean out old unstable + deprecated APIs These should all have been deprecated for at least one cycle, so this commit cleans them all out.
2016-05-30std: Clean out old unstable + deprecated APIsAlex Crichton-75/+0
These should all have been deprecated for at least one cycle, so this commit cleans them all out.