summary refs log tree commit diff
path: root/src/libstd
AgeCommit message (Collapse)AuthorLines
2015-01-04std: Fix missing stability on preludeAlex Crichton-0/+2
The module itself is stable (the name)
2015-01-04std: Fix missing stability in syncAlex Crichton-5/+4
* The `sync` module is stable * The `sync::mpsc` module is stable * The `Sender::send` method is stable. * The `Once::doit` method is now removed. * Deprecated atomic initializers are removed. * Renamed atomic initializers are now stable.
2015-01-05auto merge of #20395 : huonw/rust/char-stab-2, r=aturonbors-5/+4
cc #19260 The casing transformations are left unstable (it is highly likely to be better to adopt the proper non-1-to-1 case mappings, per #20333) as are `is_xid_*`. I've got a little todo list in the last commit of things I thought about/was told about that I haven't yet handled (I'd also like some feedback).
2015-01-05Merge `UnicodeChar` and `CharExt`.Huon Wilson-4/+3
This "reexports" all the functionality of `core::char::CharExt` as methods on `unicode::u_char::UnicodeChar` (renamed to `CharExt`). Imports may need to be updated (one now just imports `unicode::CharExt`, or `std::char::CharExt` rather than two traits from either), so this is a [breaking-change]
2015-01-05Rename `core::char::Char` to `CharExt` to match prelude guidelines.Huon Wilson-2/+2
Imports may need to be updated so this is a [breaking-change]
2015-01-05auto merge of #20163 : bfops/rust/master, r=Gankrobors-33/+61
TODOs: - ~~Entry is still `<'a, K, V>` instead of `<'a, O, V>`~~ - ~~BTreeMap is still outstanding~~. - ~~Transform appropriate things into `.entry(...).get().or_else(|e| ...)`~~ Things that make me frowny face: - I'm not happy about the fact that this `clone`s the key even when it's already owned. - With small keys (e.g. `int`s), taking a reference seems wasteful. r? @Gankro cc: @cgaebel
2015-01-04Merge pull request #20510 from tshepang/patch-6bors-1/+1
doc: remove incomplete sentence Reviewed-by: steveklabnik, steveklabnik
2015-01-04Merge pull request #20464 from ranma42/improve-make-hashbors-8/+6
Improve `make_hash` function Reviewed-by: Gankro, Gankro
2015-01-04[breaking change] Update entry API as part of RFC 509.Ben Foppa-33/+61
2015-01-04fix comment referencing RwLockville-h-1/+1
2015-01-04fix code referencing RwLockWriteGuardville-h-9/+9
2015-01-04auto merge of #20393 : japaric/rust/impl-any, r=aturonbors-2/+2
Needs a snapshot that contains PR #20385 r? @aturon
2015-01-04rename std::sync::RWLockWriteGuard to RwLockWriteGuardville-h-7/+7
2015-01-04fix code referencing RwLockReadGuardville-h-9/+9
2015-01-04rename std::sync::RWLockReadGuard to RwLockReadGuardville-h-6/+6
2015-01-04fix code and comments referencing RW_LOCK_INITville-h-7/+7
2015-01-03Remove deprecated functionalityAlex Crichton-1027/+242
This removes a large array of deprecated functionality, regardless of how recently it was deprecated. The purpose of this commit is to clean out the standard libraries and compiler for the upcoming alpha release. Some notable compiler changes were to enable warnings for all now-deprecated command line arguments (previously the deprecated versions were silently accepted) as well as removing deriving(Zero) entirely (the trait was removed). The distribution no longer contains the libtime or libregex_macros crates. Both of these have been deprecated for some time and are available externally.
2015-01-04rename std::sync::RWLOCK_INIT to RW_LOCK_INITville-h-1/+1
2015-01-04fix code and comments referencing StaticRwLockville-h-12/+12
2015-01-04doc: remove incomplete sentenceTshepang Lekhonkhobe-1/+1
2015-01-03remove `Any[Mut]RefExt` traits in favor of `impl Any`Jorge Aparicio-2/+2
2015-01-03sed -i -s 's/#\[deriving(/#\[derive(/g' **/*.rsJorge Aparicio-73/+73
2015-01-03sed -i -s 's/\bmod}/self}/g' **/*.rsJorge Aparicio-1/+1
2015-01-03sed -i -s 's/\bmod,/self,/g' **/*.rsJorge Aparicio-62/+62
2015-01-04auto merge of #20490 : japaric/rust/assoc-types, r=aturonbors-83/+168
closes #20486 closes #20474 closes #20441 [breaking-change] The `Index[Mut]` traits now have one less input parameter, as the return type of the indexing operation is an associated type. This breaks all existing implementations. --- binop traits (`Add`, `Sub`, etc) now have an associated type for their return type. Also, the RHS input parameter now defaults to `Self` (except for the `Shl` and `Shr` traits). For example, the `Add` trait now looks like this: ``` rust trait Add<Rhs=Self> { type Output; fn add(self, Rhs) -> Self::Output; } ``` The `Neg` and `Not` traits now also have an associated type for their return type. This breaks all existing implementations of these traits. --- Affected traits: - `Iterator { type Item }` - `IteratorExt` no input/output types, uses `<Self as Iterator>::Item` in its methods - `DoubleEndedIterator` no input/output types, uses `<Self as Iterator>::Item` in its methods - `DoubleEndedIteratorExt` no input/output types, uses `<Self as Iterator>::Item` in its methods - `RandomAccessIterator` no input/output types - `ExactSizeIterator` no input/output types, uses `<Self as Iterator>::Item` in its methods This breaks all the implementations of these traits.
2015-01-04rename std::sync::StaticRWLock to StaticRwLockville-h-4/+4
2015-01-04fix code and comments referencing RwLockville-h-32/+32
2015-01-03std: fix falloutJorge Aparicio-0/+30
2015-01-03use assoc types in unop traitsJorge Aparicio-2/+6
2015-01-03use assoc types in binop traitsJorge Aparicio-15/+39
2015-01-03rename std::sync::RWLock to RwLockville-h-7/+7
2015-01-03Initial version of AArch64 support.Akos Kiss-30/+79
Adds AArch64 knowledge to: * configure, * make files, * sources, * tests, and * documentation.
2015-01-03core: merge IteratorPairExt into IteratorExtJorge Aparicio-1/+0
2015-01-03Register new snapshotsJorge Aparicio-27/+0
2015-01-03core: merge DoubleEndedIteratorExt into IteratorExtJorge Aparicio-5/+4
2015-01-03std: fix falloutJorge Aparicio-37/+93
2015-01-03Improve `make_hash` functionAndrea Canciani-8/+6
The `make_hash` function is used to prevent hashes of non-empty buckets to collide with `EMPTY_HASH = 0u64`. Ideally this function also preserve the uniform distribution of hashes and is cheap to compute. The new implementation reduces the input hash size by one bit, simply by setting the most significant bit. This obviously prevent output hashes to collide with `EMPTY_HASH` and guarantees that the uniform distribution is preserved. Moreover, the new function is simpler (no comparisons, just an OR) and (under the same assumptions as the old function, i.e. only the least significant bit will contribute to the bucket index) no additional collisions are caused.
2015-01-03auto merge of #20154 : P1start/rust/qualified-assoc-type-generics, ↵bors-6/+6
r=nikomatsakis This modifies `Parser::eat_lt` to always split up `<<`s, instead of doing so only when a lifetime name followed or the `force` parameter (now removed) was `true`. This is because `Foo<<TYPE` is now a valid start to a type, whereas previously only `Foo<<LIFETIME` was valid. This is a [breaking-change]. Change code that looks like this: ```rust let x = foo as bar << 13; ``` to use parentheses, like this: ```rust let x = (foo as bar) << 13; ``` Closes #17362.
2015-01-02rollup merge of #20410: japaric/assoc-typesAlex Crichton-35/+38
Conflicts: src/liballoc/lib.rs src/libcollections/lib.rs src/libcollections/slice.rs src/libcore/ops.rs src/libcore/prelude.rs src/libcore/ptr.rs src/librustc/middle/traits/project.rs src/libstd/c_str.rs src/libstd/io/mem.rs src/libstd/io/mod.rs src/libstd/lib.rs src/libstd/path/posix.rs src/libstd/path/windows.rs src/libstd/prelude.rs src/libstd/rt/exclusive.rs src/libsyntax/lib.rs src/test/compile-fail/issue-18566.rs src/test/run-pass/deref-mut-on-ref.rs src/test/run-pass/deref-on-ref.rs src/test/run-pass/dst-deref-mut.rs src/test/run-pass/dst-deref.rs src/test/run-pass/fixup-deref-mut.rs src/test/run-pass/issue-13264.rs src/test/run-pass/overloaded-autoderef-indexing.rs
2015-01-02rollup merge of #20341: nikomatsakis/impl-trait-for-trait-2Alex Crichton-2/+25
Conflicts: src/librustc/middle/traits/mod.rs src/libstd/io/mod.rs src/test/run-pass/builtin-superkinds-self-type.rs
2015-01-02Rollup test fixes and rebase conflictsAlex Crichton-22/+10
2015-01-02rollup merge of #20416: nikomatsakis/coherenceAlex Crichton-0/+1
Conflicts: src/test/run-pass/issue-15734.rs src/test/run-pass/issue-3743.rs
2015-01-02core: use assoc types in `Deref[Mut]`Jorge Aparicio-18/+28
2015-01-02rollup merge of #20354: alexcrichton/second-pass-thread_localAlex Crichton-44/+145
Conflicts: src/libstd/sys/common/thread_info.rs
2015-01-02rollup merge of #20315: alexcrichton/std-syncAlex Crichton-749/+112
Conflicts: src/libstd/rt/exclusive.rs src/libstd/sync/barrier.rs src/libstd/sys/unix/pipe.rs src/test/bench/shootout-binarytrees.rs src/test/bench/shootout-fannkuch-redux.rs
2015-01-02rollup merge of #20377: alexcrichton/issue-20352Alex Crichton-48/+26
2015-01-02rollup merge of #20273: alexcrichton/second-pass-commAlex Crichton-932/+902
Conflicts: src/doc/guide.md src/libcollections/bit.rs src/libcollections/btree/node.rs src/libcollections/slice.rs src/libcore/ops.rs src/libcore/prelude.rs src/librand/rand_impls.rs src/librustc/middle/check_match.rs src/librustc/middle/infer/region_inference/mod.rs src/librustc_driver/lib.rs src/librustdoc/test.rs src/libstd/bitflags.rs src/libstd/io/comm_adapters.rs src/libstd/io/mem.rs src/libstd/io/mod.rs src/libstd/io/net/pipe.rs src/libstd/io/net/tcp.rs src/libstd/io/net/udp.rs src/libstd/io/pipe.rs src/libstd/io/process.rs src/libstd/io/stdio.rs src/libstd/io/timer.rs src/libstd/io/util.rs src/libstd/macros.rs src/libstd/os.rs src/libstd/path/posix.rs src/libstd/path/windows.rs src/libstd/prelude/v1.rs src/libstd/rand/mod.rs src/libstd/rand/os.rs src/libstd/sync/barrier.rs src/libstd/sync/condvar.rs src/libstd/sync/future.rs src/libstd/sync/mpsc/mod.rs src/libstd/sync/mpsc/mpsc_queue.rs src/libstd/sync/mpsc/select.rs src/libstd/sync/mpsc/spsc_queue.rs src/libstd/sync/mutex.rs src/libstd/sync/once.rs src/libstd/sync/rwlock.rs src/libstd/sync/semaphore.rs src/libstd/sync/task_pool.rs src/libstd/sys/common/helper_thread.rs src/libstd/sys/unix/process.rs src/libstd/sys/unix/timer.rs src/libstd/sys/windows/c.rs src/libstd/sys/windows/timer.rs src/libstd/sys/windows/tty.rs src/libstd/thread.rs src/libstd/thread_local/mod.rs src/libstd/thread_local/scoped.rs src/libtest/lib.rs src/test/auxiliary/cci_capture_clause.rs src/test/bench/shootout-reverse-complement.rs src/test/bench/shootout-spectralnorm.rs src/test/compile-fail/array-old-syntax-2.rs src/test/compile-fail/bind-by-move-no-guards.rs src/test/compile-fail/builtin-superkinds-self-type.rs src/test/compile-fail/comm-not-freeze-receiver.rs src/test/compile-fail/comm-not-freeze.rs src/test/compile-fail/issue-12041.rs src/test/compile-fail/unsendable-class.rs src/test/run-pass/builtin-superkinds-capabilities-transitive.rs src/test/run-pass/builtin-superkinds-capabilities-xc.rs src/test/run-pass/builtin-superkinds-capabilities.rs src/test/run-pass/builtin-superkinds-self-type.rs src/test/run-pass/capturing-logging.rs src/test/run-pass/closure-bounds-can-capture-chan.rs src/test/run-pass/comm.rs src/test/run-pass/core-run-destroy.rs src/test/run-pass/drop-trait-enum.rs src/test/run-pass/hashmap-memory.rs src/test/run-pass/issue-13494.rs src/test/run-pass/issue-3609.rs src/test/run-pass/issue-4446.rs src/test/run-pass/issue-4448.rs src/test/run-pass/issue-8827.rs src/test/run-pass/issue-9396.rs src/test/run-pass/ivec-tag.rs src/test/run-pass/rust-log-filter.rs src/test/run-pass/send-resource.rs src/test/run-pass/send-type-inference.rs src/test/run-pass/sendable-class.rs src/test/run-pass/spawn-types.rs src/test/run-pass/task-comm-0.rs src/test/run-pass/task-comm-10.rs src/test/run-pass/task-comm-11.rs src/test/run-pass/task-comm-13.rs src/test/run-pass/task-comm-14.rs src/test/run-pass/task-comm-15.rs src/test/run-pass/task-comm-16.rs src/test/run-pass/task-comm-3.rs src/test/run-pass/task-comm-4.rs src/test/run-pass/task-comm-5.rs src/test/run-pass/task-comm-6.rs src/test/run-pass/task-comm-7.rs src/test/run-pass/task-comm-9.rs src/test/run-pass/task-comm-chan-nil.rs src/test/run-pass/task-spawn-move-and-copy.rs src/test/run-pass/task-stderr.rs src/test/run-pass/tcp-accept-stress.rs src/test/run-pass/tcp-connect-timeouts.rs src/test/run-pass/tempfile.rs src/test/run-pass/trait-bounds-in-arc.rs src/test/run-pass/trivial-message.rs src/test/run-pass/unique-send-2.rs src/test/run-pass/unique-send.rs src/test/run-pass/unwind-resource.rs
2015-01-02merge `*SliceExt` traits, use assoc types in `SliceExt`, `Raw[Mut]Ptr`Jorge Aparicio-18/+13
2015-01-02Fix fallout from change, adding explicit `Sized` annotations where necessary.Niko Matsakis-2/+25
2015-01-02Properly deal with Ordering in the guideSteve Klabnik-0/+1
Now that it's been removed from the prelude, we need to treat things differently. Fixes #17967