about summary refs log tree commit diff
path: root/src/libcore
AgeCommit message (Collapse)AuthorLines
2015-02-23int audit - libcore::fmtNick Cameron-36/+55
2015-02-23Auto merge of #21769 - brooksbp:column-line-macro, r=nick29581bors-5/+40
Please see discussion in #19284 .
2015-02-22Auto merge of #22466 - Kimundi:str_pattern_ai_safe, r=aturonbors-275/+756
This is not a complete implementation of the RFC: - only existing methods got updated, no new ones added - doc comments are not extensive enough yet - optimizations got lost and need to be reimplemented See https://github.com/rust-lang/rfcs/pull/528 Technically a [breaking-change]
2015-02-22Eliminate more excessive null-checks from slice iteratorsBjörn Steinbrink-0/+3
This adds the assume() calls back that got lost when rebasing #21886.
2015-02-22Add negative impls for SyncFlavio Percoco-1/+5
2015-02-22Add negative impls for `*const T` and `*mut T`Flavio Percoco-0/+7
2015-02-21Resolve barriers to changing column!() / line!() return type to u32 in ↵Brian Brooks-8/+42
#19284 . Address review comments in #21769 .
2015-02-22Rollup merge of #22584 - alexcrichton:snapshots, r=GankroManish Goregaokar-253/+0
2015-02-22Rollup merge of #22602 - steveklabnik:doc_range_step, r=alexcrichtonManish Goregaokar-2/+47
2015-02-21Remove mention of non-existing AtomicOption in docsWesley Wiser-1/+1
AtomicOption was removed in 7d8d06f86b48520814596bd5363d2b82bc619774 but the docs weren't updated. Fixes #22586
2015-02-21Kill fmt::Show and fmt::String with fire!Simonas Kazlauskas-32/+0
Toss the tomatoes!
2015-02-21Resolve includeme.fragment conflict.Brian Brooks-2/+3
2015-02-20Register new snapshotsAlex Crichton-253/+0
2015-02-20Add examples for iter::range_stepSteve Klabnik-2/+47
2015-02-20Tweaks to equality comparisons for slices/arrays/vectorsVadim Petrochenkov-43/+61
2015-02-20Addressed PR commentsMarvin Löbel-56/+197
2015-02-20Fix tidy and rebase falloutMarvin Löbel-15/+27
Added a few bugfixes and additional testcases
2015-02-20Added a Pattern impl that delegates to the dereference of a type.Marvin Löbel-22/+89
This allows to match with a `&String` or `&&str`, for example.
2015-02-20Refactored code into Searcher traits with naive implementationsMarvin Löbel-384/+470
Made the family of Split iterators use the Pattern API Renamed the Matcher traits into Searcher
2015-02-20Made match_indices use the generic pattern APIMarvin Löbel-29/+34
2015-02-20Made str::MatchIndices a private implementantion detailMarvin Löbel-10/+24
2015-02-20Added string pattern traits and basic implementantionsMarvin Löbel-126/+282
2015-02-19Round 5 test fixes and rebase conflictsAlex Crichton-2/+2
2015-02-18Round 4 test fixes and rebase conflictsAlex Crichton-3/+3
2015-02-18Round 3 test fixes and conflictsAlex Crichton-10/+8
2015-02-18rollup merge of #22286: nikomatsakis/variance-4bAlex Crichton-244/+240
Conflicts: src/librustc/middle/infer/combine.rs src/librustc_typeck/check/wf.rs
2015-02-18Round 2 test fixes and conflictsAlex Crichton-11/+115
2015-02-18rollup merge of #22502: nikomatsakis/deprecate-bracket-bracketAlex Crichton-15/+15
Conflicts: src/libcollections/slice.rs src/libcollections/str.rs src/librustc/middle/lang_items.rs src/librustc_back/rpath.rs src/librustc_typeck/check/regionck.rs src/libstd/ffi/os_str.rs src/libsyntax/diagnostic.rs src/libsyntax/parse/parser.rs src/libsyntax/util/interner.rs src/test/run-pass/regions-refcell.rs
2015-02-18rollup merge of #22210: aturon/stab-final-borrowAlex Crichton-382/+2
Conflicts: src/libcollections/btree/map.rs src/libcollections/str.rs src/libcollections/vec.rs src/libcore/borrow.rs src/libcore/hash/mod.rs src/libstd/collections/hash/map.rs src/libstd/collections/hash/set.rs
2015-02-18Round 1 fixes and rebase conflictsAlex Crichton-5/+5
2015-02-18Stabilize std::borrowAaron Turon-276/+0
This commit stabilizes `std::borrow`, making the following modifications to catch up the API with language changes: * It renames `BorrowFrom` to `Borrow`, as was originally intended (but blocked for technical reasons), and reorders the parameters accordingly. * It moves the type parameter of `ToOwned` to an associated type. This is somewhat less flexible, in that each borrowed type must have a unique owned type, but leads to a significant simplification for `Cow`. Flexibility can be regained by using newtyped slices, which is advisable for other reasons anyway. * It removes the owned type parameter from `Cow`, making the type much less verbose. * Deprecates the `is_owned` and `is_borrowed` predicates in favor of direct matching. The above API changes are relatively minor; the basic functionality remains the same, and essentially the whole module is now marked `#[stable]`. [breaking-change]
2015-02-18Replace all uses of `&foo[]` with `&foo[..]` en masse.Niko Matsakis-15/+15
2015-02-18rollup merge of #22497: nikomatsakis/suffixesAlex Crichton-6/+6
Conflicts: src/librustc_trans/trans/tvec.rs
2015-02-18rollup merge of #22491: Gankro/into_iterAlex Crichton-9/+10
Conflicts: src/libcollections/bit.rs src/libcollections/linked_list.rs src/libcollections/vec_deque.rs src/libstd/sys/common/wtf8.rs
2015-02-18rollup merge of #22485: pnkfelix/fsk-int-uint-auditAlex Crichton-27/+27
cc #22240
2015-02-18rollup merge of #22480: alexcrichton/hashv3Alex Crichton-128/+423
This commit is an implementation of [RFC 823][rfc] which is another pass over the `std::hash` module for stabilization. The contents of the module were not entirely marked stable, but some portions which remained quite similar to the previous incarnation are now marked `#[stable]`. Specifically: [rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0823-hash-simplification.md * `std::hash` is now stable (the name) * `Hash` is now stable * `Hash::hash` is now stable * `Hasher` is now stable * `SipHasher` is now stable * `SipHasher::new` and `new_with_keys` are now stable * `Hasher for SipHasher` is now stable * Many `Hash` implementations are now stable All other portions of the `hash` module remain `#[unstable]` as they are less commonly used and were recently redesigned. This commit is a breaking change due to the modifications to the `std::hash` API and more details can be found on the [RFC][rfc]. Closes #22467 [breaking-change]
2015-02-18rollup merge of #22287: Ryman/purge_carthographersAlex Crichton-5/+22
This overlaps with #22276 (I left make check running overnight) but covers a number of additional cases and has a few rewrites where the clones are not even necessary. This also implements `RandomAccessIterator` for `iter::Cloned` cc @steveklabnik, you may want to glance at this before #22281 gets the bors treatment
2015-02-18Stabilize Send/Sync.Niko Matsakis-4/+2
2015-02-18Add deprecated versions of the old markers and integrate them back into the ↵Niko Matsakis-0/+37
variance analysis.
2015-02-18WIP -- improve documentation on the phantom traitsNiko Matsakis-5/+71
2015-02-18make FromIterator use IntoIteratorAlexis-8/+9
This breaks all implementors of FromIterator, as they must now accept IntoIterator instead of Iterator. The fix for this is generally trivial (change the bound, and maybe call into_iter() on the argument to get the old argument). Users of FromIterator should be unaffected because Iterators are IntoIterator. [breaking-change]
2015-02-18make Extend use IntoIteratorAlexis-1/+1
This breaks all implementors of Extend, as they must now accept IntoIterator instead of Iterator. The fix for this is generally trivial (change the bound, and maybe call into_iter() on the argument to get the old argument). Users of Extend should be unaffected because Iterators are IntoIterator. [breaking-change]
2015-02-18std: Stabilize the `hash` moduleAlex Crichton-128/+423
This commit is an implementation of [RFC 823][rfc] which is another pass over the `std::hash` module for stabilization. The contents of the module were not entirely marked stable, but some portions which remained quite similar to the previous incarnation are now marked `#[stable]`. Specifically: [rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0823-hash-simplification.md * `std::hash` is now stable (the name) * `Hash` is now stable * `Hash::hash` is now stable * `Hasher` is now stable * `SipHasher` is now stable * `SipHasher::new` and `new_with_keys` are now stable * `Hasher for SipHasher` is now stable * Many `Hash` implementations are now stable All other portions of the `hash` module remain `#[unstable]` as they are less commonly used and were recently redesigned. This commit is a breaking change due to the modifications to the `std::hash` API and more details can be found on the [RFC][rfc]. Closes #22467 [breaking-change]
2015-02-18Fallout: Port slice to use `PhantomData` instead of `ContravariantLifetime`Niko Matsakis-7/+7
2015-02-18Fallout: iter, add markers or other changes such that all type parameters ↵Niko Matsakis-5/+6
are used.
2015-02-18Fallout: AtomicPtr needs phantom data to indicate that it contains an unsafe ↵Niko Matsakis-1/+4
pointer.
2015-02-18Rewrite `Unique<T>` so that it is covariant in T, implies `NonZero` and ↵Niko Matsakis-25/+36
ownership, and also follows the API of `NonZero` a bit more closely. More to do here I think (including perhaps a new name).
2015-02-18Introduce the new phantomdata/phantomfn markers and integrate themNiko Matsakis-211/+91
into variance inference; fix various bugs in variance inference so that it considers the correct set of constraints; modify infer to consider the results of variance inference for type arguments.
2015-02-18Remove `i`, `is`, `u`, or `us` suffixes that are not necessary.Niko Matsakis-6/+6
2015-02-18Audit `core::intrinsics` for `int`/`uint`: `size_of`/`align_of` use `usize`.Felix S. Klock II-12/+12
Likewise, `fn offset` takes an `isize`.