summary refs log tree commit diff
path: root/src/libstd
AgeCommit message (Collapse)AuthorLines
2013-06-07add the Iterator trait to the preludeDaniel Micay-0/+1
2013-06-07std: Change str::from_bytes to raise a condition on invalid inputTim Chevalier-6/+31
As per #4765
2013-06-07iterator: work around method resolve bug (#5898)Daniel Micay-4/+5
2013-06-08std: remove each[i]_mut functions, in favour of iterators.Huon Wilson-56/+13
2013-06-07std::rt: Reduce task stack size to 1MBBrian Anderson-1/+1
2013-06-08std: remove vec::each2 and vec::each2_mut in favour of iteratorsHuon Wilson-38/+0
2013-06-08std: more dummy type parameters on iterators to work around #6967.Huon Wilson-18/+21
2013-06-06auto merge of #6979 : thestinger/rust/libc, r=brsonbors-36/+5
LLVM provides these functions as intrinsics, and will generate calls to libc when appropriate. They are exposed in the `ptr` module as `copy_nonoverlapping_memory`, `copy_memory` and `set_memory`. @graydon: r?
2013-06-06std::rt: Fix a race in the UvRemoteCallback dtorBrian Anderson-11/+15
2013-06-06std::rt: Fix stream test to be parallelBrian Anderson-4/+4
2013-06-06std::rt: Configure test threads with RUST_TEST_THREADS. Default is ncores x2Brian Anderson-2/+17
2013-06-06std: Fix stage0 buildBrian Anderson-0/+12
Conflicts: src/libstd/rt/comm.rs
2013-06-06FixupsMarvin Löbel-19/+23
2013-06-06Removed IteratorUtil::to_vec and iter::to_vecMarvin Löbel-52/+11
2013-06-06Added IteratorUtil::collectMarvin Löbel-0/+27
2013-06-06Added iter::FromIterMarvin Löbel-3/+31
2013-06-06libc: omit memcpy, memmove and memsetDaniel Micay-36/+5
LLVM provides these functions as intrinsics, and will generate calls to libc when appropriate. They are exposed in the `ptr` module as `copy_nonoverlapping_memory`, `copy_memory` and `set_memory`.
2013-06-06auto merge of #6968 : huonw/rust/takeskip-iter, r=thestingerbors-11/+13
@thestinger r? Adding the dummy parameter stops the inference from having to work so hard.
2013-06-06libstd: use fmt! in to_str impl for (one|two)-tupleRamkumar Ramachandra-2/+2
The three-tuple uses fmt!, and there's no reason to hand-concatenate strings. Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
2013-06-06libstd: fix comment in to_str impl of tupleRamkumar Ramachandra-2/+2
There is a pointer to #4760, which is a closed issue. The real issue is the more general problem described in #4653. Correct the comment. Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
2013-06-06Deduplicate words in code commentsAlexei Sholik-2/+2
2013-06-06std: work-around for take/skip type inference (#6967)Huon Wilson-11/+13
2013-06-06std: add an external iterator for mutating vec elementsHuon Wilson-0/+44
2013-06-05core::rt: Add `MegaPipe`, an unbounded, multiple producer/consumer, ↵Brian Anderson-0/+71
lock-free queue
2013-06-05core::rt: Add SharedPortBrian Anderson-0/+132
2013-06-05core::rt: Implement SharedChanBrian Anderson-3/+64
2013-06-05std::rt: Remove in incorrect assertBrian Anderson-1/+3
2013-06-05std::rt: Destroy the task start closure while in task contextBrian Anderson-1/+36
2013-06-05std::rt: Use AtomicUint instead of intrinsics in commBrian Anderson-9/+9
2013-06-05core: Make atomic methods publicBrian Anderson-31/+31
2013-06-05rand example fixupJohn Clements-1/+1
2013-06-04librustc: Disallow multiple patterns from appearing in a "let" declaration.Patrick Walton-51/+57
You can still initialize multiple variables at once with "let (x, y) = (1, 2)".
2013-06-04auto merge of #6942 : thestinger/rust/cleanup, r=catamorphismbors-14/+0
borrowed pointers already implement Eq and Ord with deep comparisons
2013-06-04auto merge of #6941 : Thiez/rust/pub_atomics, r=thestingerbors-31/+31
As the title suggests, this marks all the fns on the impls on the atomic types in std::unstable::atomics as pub, which makes them significantly more usable (they are rather unusable otherwise). r?
2013-06-04sys: get rid of shape functionsDaniel Micay-14/+0
borrowed pointers already implement Eq and Ord with deep comparisons
2013-06-04clone: fix docstringDaniel Micay-2/+1
@T and @mut T for T: Const have DeepClone
2013-06-05Made fns in the impls for the Atomic structs pubMatthijs Hofstra-31/+31
2013-06-04std::util: fix missed old constructorPhilipp Brüschweiler-1/+1
2013-06-04std::util: Modernize NonCopyable constructorPhilipp Brüschweiler-4/+6
part of #3853
2013-06-04std::io: Modernize some constructorsPhilipp Brüschweiler-33/+35
Part of #3853
2013-06-04std::cell: Modernize constructorsPhilipp Brüschweiler-101/+101
Part of #3853
2013-06-03auto merge of #6886 : jld/rust/vec-each-ret-fix, r=sanxiynbors-2/+19
2013-06-03auto merge of #6907 : steveklabnik/rust/prelude_docs, r=graydonbors-1/+18
2013-06-03Add better documentation for the Prelude.Steve Klabnik-1/+18
2013-06-03rename the Ptr trait to RawPtrDaniel Micay-10/+10
Closes #6607
2013-06-03Add traits for concat and connect methodsBrendan Zabarauskas-90/+204
2013-06-02ptr: split out borrowed pointer utilitiesDaniel Micay-48/+64
The ptr module is intended to be for raw pointers. Closes #3111
2013-06-02Add a get_mut method to accompany the get method.gareth-0/+9
2013-06-01auto merge of #6896 : nickdesaulniers/rust/issue4501, r=brsonbors-10/+10
review? @brson
2013-06-01auto merge of #6815 : kballard/rust/hashmap-insert_or_modify_with, r=ericktbors-36/+35
`std::hashmap::HashMap.insert_or_update_with()` is basically the opposite of `find_or_insert_with()`. It inserts a given key-value pair if the key does not already exist, or replaces the existing value with the output of the passed function if it does. This is useful because replicating this with existing functionality is awkward, especially with the current borrow-checker. In my own project I have code that looks like if match map.find_mut(&key) { None => { true } Some(x) => { *x += 1; false } } { map.insert(key, 0); } and it took several iterations to make it look this good. The new function turns this into map.insert_or_update_with(key, 0, |_,x| *x += 1);