summary refs log tree commit diff
path: root/src/libstd
AgeCommit message (Collapse)AuthorLines
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);
2013-06-01Swap return value of pipes::init Fixes #4501Nick Desaulniers-10/+10
2013-06-01Add new function hashmap.insert_or_update_with()Kevin Ballard-0/+15
fn insert_or_update_with<'a>(&'a mut self, k: K, f: &fn(&K, &mut V)) -> &'a V
2013-06-01Refactor some hashmap code into a new private function mangle()Kevin Ballard-37/+21
Add new private hashmap function fn mangle(&mut self, k: K, not_found: &fn(&K) -> V, found: &fn(&K, &mut V)) -> uint Rewrite find_or_insert() and find_or_insert_with() on top of mangle(). Also take the opportunity to change the return type of find_or_insert() and find_or_insert_with() to &'a mut V. This fixes #6394.
2013-06-01Fix vec::each* return valuesJed Davis-2/+19
2013-06-01std: fix run tests when symlink is in the rust checkout pathErick Tryzelaar-6/+12
2013-06-01Remove all uses of `pub impl`. rs=stylePatrick Walton-306/+329
2013-05-31auto merge of #6851 : alexcrichton/rust/bugfixes, r=pcwaltonbors-3/+19
Closes #5090 by using the excellent new generic deriving code Promotes the unreachable code attribute to a lint attribute (instead of always being a warning) Fixes some edge cases when creating hashmaps/hashsets and also when consuming them. (fixes #5998)
2013-05-31auto merge of #6876 : cmr/rust/from_elem_opts, r=Aatchbors-3/+15
borrowck 1.85x speedup on libstd
2013-06-01Optimize vec::from_elem with manual inlining (borrowck 1.85x speedup on libstd)Corey Richardson-3/+15
2013-05-31auto merge of #6729 : bstrie/rust/ascstr, r=Aatchbors-23/+40
Formerly this was a free function rather than a method. I've left it in place for now, although redefined it so that it just calls the method.
2013-05-31auto merge of #6864 : thestinger/rust/bool, r=pcwaltonbors-49/+38
2013-05-31bool: rm functions duplicating methodsDaniel Micay-49/+38
2013-05-31Add as_c_str method on stringsBen Striegel-23/+40
2013-05-31ptr: replace unnecessary unsafe codeDaniel Micay-58/+18
2013-05-31mv the raw pointer {swap,replace}_ptr to std::ptrDaniel Micay-42/+43
2013-05-31auto merge of #6853 : bblum/rust/sized, r=pcwaltonbors-1/+6
r? @nikomatsakis @pcwalton
2013-05-31auto merge of #6833 : fdr/rust/fix-warnings, r=Aatchbors-20/+13
Fix a laundry list of warnings involving unused imports that glutted up compilation output. There are more, but there seems to be some false positives (where 'remedy' appears to break the build), but this particular set of fixes seems safe.
2013-05-30auto merge of #6841 : steveklabnik/rust/range_docs, r=thestingerbors-3/+12
2013-05-30Fix a bug with HashMap::consumeAlex Crichton-3/+19
2013-05-30Add 'Sized' builtin kind; doesn't do anything yetBen Blum-1/+6
2013-05-30Add example for uint::range_step.Steve Klabnik-3/+12
2013-05-30core::rt: deny(unused_imports, unused_mut, unused_variable)Brian Anderson-22/+11
2013-05-30Remove unnecessary 'use' formsDaniel Farina-20/+13
Fix a laundry list of warnings involving unused imports that glutted up compilation output. There are more, but there seems to be some false positives (where 'remedy' appears to break the build), but this particular set of fixes seems safe.
2013-05-30Remove copy bindings from patterns.Niko Matsakis-23/+23
2013-05-30Remove a bunch of unnecessary allocations and copiesBjörn Steinbrink-3/+2