summary refs log tree commit diff
path: root/src/liballoc/lib.rs
AgeCommit message (Collapse)AuthorLines
2018-05-01Auto merge of #49724 - kennytm:range-inc-start-end-methods, r=Kimundibors-1/+1
Introduce RangeInclusive::{new, start, end} methods and make the fields private. cc #49022
2018-04-30Auto merge of #48925 - zackmdavis:fn_must_stabilize, r=nikomatsakisbors-1/+1
stabilize `#[must_use]` for functions and must-use comparison operators (RFC 1940) r? @nikomatsakis
2018-05-01Rollup merge of #50233 - mark-i-m:const_vec, r=kennytmkennytm-0/+1
Make `Vec::new` a `const fn` `RawVec::empty/_in` are a hack. They're there because `if size_of::<T> == 0 { !0 } else { 0 }` is not allowed in `const` yet. However, because `RawVec` is unstable, the `empty/empty_in` constructors can be removed when #49146 is done...
2018-04-30Make the fields of RangeInclusive private.kennytm-1/+1
Added new()/start()/end() methods to RangeInclusive. Changed the lowering of `..=` to use RangeInclusive::new().
2018-04-28stabilize `#[must_use]` for functions and must-use operatorsZack M. Davis-1/+1
This is in the matter of RFC 1940 and tracking issue #43302.
2018-04-26not insta-stableMark Mansi-0/+1
2018-04-23mark std::str::replacen and std::str::replace as #[must_use].Matthias Krüger-0/+1
2018-04-21Make the unstable StrExt and SliceExt traits private to libcore in not(stage0)Simon Sapin-1/+1
`Float` still needs to be public for libcore unit tests.
2018-04-21Replace StrExt with inherent str methods in libcoreSimon Sapin-0/+1
2018-04-21Replace SliceExt with inherent [T] methods in libcoreSimon Sapin-0/+1
2018-04-17stabilize `nonnull_cast` featuretinaun-1/+0
2018-04-17stabilize `swap_with_slice` featuretinaun-1/+1
2018-04-17stabilize `slice_rsplit` featuretinaun-1/+0
2018-04-12Use NonNull<Void> instead of *mut u8 in the Alloc traitMike Hommey-0/+1
Fixes #49608
2018-04-12Restore Global.oom() functionalitySimon Sapin-0/+1
… now that #[global_allocator] does not define a symbol for it
2018-04-12Separate alloc::heap::Alloc trait for stage0 #[global_allocator]Simon Sapin-0/+6
2018-04-12Actually deprecate heap modules.Simon Sapin-2/+8
2018-04-12Rename `heap` modules in the core, alloc, and std crates to `alloc`Simon Sapin-2/+6
2018-04-12Auto merge of #49551 - scottmcm:deprecate-offset_to, r=KodrAusbors-1/+1
Deprecate offset_to; switch core&alloc to using offset_from instead Bonus: might make code than uses `.len()` on slice iterators faster cc https://github.com/rust-lang/rust/issues/41079
2018-04-12Mark the rest of the `unicode` feature flag as perma-unstable.Simon Sapin-1/+1
2018-04-12Deprecate the std_unicode crateSimon Sapin-2/+0
2018-04-08Move deny(warnings) into rustbuildMark Simulacrum-1/+0
This permits easier iteration without having to worry about warnings being denied. Fixes #49517
2018-04-05Bump the bootstrap compiler to 1.26.0 betaAlex Crichton-2/+1
Holy cow that's a lot of `cfg(stage0)` removed and a lot of new stable language features!
2018-04-05Auto merge of #48851 - petrochenkov:genparattr, r=nikomatsakisbors-1/+1
Stabilize attributes on generic parameters Closes https://github.com/rust-lang/rust/issues/48848
2018-04-05Stabilize attributes on generic parametersVadim Petrochenkov-1/+1
2018-04-04Rollup merge of #49607 - cuviper:stable-iter-1.27, r=alexcrichtonkennytm-1/+0
Stabilize iterator methods in 1.27 - Closes #39480, feature `iter_rfind` - `DoubleEndedIterator::rfind` - Closes #44705, feature `iter_rfold` - `DoubleEndedIterator::rfold` - Closes #45594, feature `iterator_try_fold` - `Iterator::try_fold` - `Iterator::try_for_each` - `DoubleEndedIterator::try_rfold`
2018-04-03Remove all unstable placement featuresAidan Hobson Sayers-8/+4
Closes #22181, #27779
2018-04-02Stabilize iter_rfold in 1.27.0Josh Stone-1/+0
2018-03-31Deprecate offset_to; switch core&alloc to using offset_from insteadScott McMurray-1/+1
Bonus: might make code than uses `.len()` on slice iterators faster
2018-03-31Auto merge of #49481 - SimonSapin:core-heap, r=alexcrichtonbors-3/+4
Move the alloc::allocator module to core::heap This is the `Alloc` trait and its dependencies.
2018-03-29Move the alloc::allocator module to core::heapSimon Sapin-3/+4
This is the `Alloc` trait and its dependencies.
2018-03-29Move RangeArguments to {core::std}::ops and rename to RangeBoundsSimon Sapin-1/+1
These unstable items are deprecated: * The `std::collections::range::RangeArgument` reexport * The `std::collections::range` module.
2018-03-29Move alloc::Bound to {core,std}::opsSimon Sapin-51/+0
The stable reexport `std::collections::Bound` is now deprecated. Another deprecated reexport could be added in `alloc`, but that crate is unstable.
2018-03-26Stabilize i128_typeMark Mansi-1/+1
2018-03-20Auto merge of #48516 - petrochenkov:stabsl, r=nikomatsakisbors-1/+0
Stabilize slice patterns without `..` And merge `feature(advanced_slice_patterns)` into `feature(slice_patterns)`. The detailed description can be found in https://github.com/rust-lang/rust/issues/48836. Slice patterns were unstable for long time since before 1.0 due to many bugs in the implementation, now this stabilization is possible primarily due to work of @arielb1 who [wrote the new MIR-based implementation of slice patterns](https://github.com/rust-lang/rust/pull/32202) and @mikhail-m1 who [fixed one remaining class of codegen issues](https://github.com/rust-lang/rust/pull/47926). Reference PR https://github.com/rust-lang-nursery/reference/pull/259 cc https://github.com/rust-lang/rust/issues/23121 fixes #48836
2018-03-20Stabilize slice patterns without `..`Vadim Petrochenkov-1/+0
Merge `feature(advanced_slice_patterns)` into `feature(slice_patterns)`
2018-03-19Auto merge of #49058 - withoutboats:pin, r=cramertjbors-0/+1
Pin, Unpin, PinBox Implementing rust-lang/rfcs#2349 (do not merge until RFC is merged) @bors r? @cramertj
2018-03-15Add liballoc APIs.boats-0/+1
2018-03-15Auto merge of #47813 - kennytm:stable-incl-range, r=nrcbors-1/+1
Stabilize inclusive range (`..=`) Stabilize the followings: * `inclusive_range` — The `std::ops::RangeInclusive` and `std::ops::RangeInclusiveTo` types, except its fields (tracked by #49022 separately). * `inclusive_range_syntax` — The `a..=b` and `..=b` expression syntax * `dotdoteq_in_patterns` — Using `a..=b` in a pattern cc #28237 r? @rust-lang/lang
2018-03-15Keep the fields of RangeInclusive unstable.kennytm-0/+1
2018-03-15Stabilize `inclusive_range` library feature.kennytm-1/+0
Stabilize std::ops::RangeInclusive and std::ops::RangeInclusiveTo.
2018-03-14implementing fallible allocation API (try_reserve) for Vec, String and HashMapsnf-0/+1
2018-03-06Rollup merge of #47463 - bluss:fused-iterator, r=alexcrichtonkennytm-2/+1
Stabilize FusedIterator FusedIterator is a marker trait that promises that the implementing iterator continues to return `None` from `.next()` once it has returned `None` once (and/or `.next_back()`, if implemented). The effects of FusedIterator are already widely available through `.fuse()`, but with stable `FusedIterator`, stable Rust users can implement this trait for their iterators when appropriate. Closes #35602
2018-03-03core: Stabilize FusedIteratorUlrik Sverdrup-2/+1
FusedIterator is a marker trait that promises that the implementing iterator continues to return `None` from `.next()` once it has returned `None` once (and/or `.next_back()`, if implemented). The effects of FusedIterator are already widely available through `.fuse()`, but with stable `FusedIterator`, stable Rust users can implement this trait for their iterators when appropriate.
2018-03-02Optimize str::repeatShotaro Yamada-0/+1
2018-02-22Stabilize [T]::rotate_{left,right}Corey Farwell-1/+0
https://github.com/rust-lang/rust/issues/41891
2018-01-20Assign its own tracking issue to Box::into_raw_non_nullSimon Sapin-0/+1
https://github.com/rust-lang/rust/issues/47336
2018-01-20Stabilize std::ptr::NonNullSimon Sapin-1/+0
2018-01-20Mark Unique as perma-unstable, with the feature renamed to ptr_internals.Simon Sapin-1/+1
2018-01-20Rename std::ptr::Shared to NonNullSimon Sapin-1/+1
`Shared` is now a deprecated `type` alias. CC https://github.com/rust-lang/rust/issues/27730#issuecomment-352800629