summary refs log tree commit diff
path: root/src/libstd
AgeCommit message (Collapse)AuthorLines
2013-07-20Change the HOF context switchers to pass a BlockedTask instead of a ~Task.Ben Blum-60/+102
2013-07-20Add BlockedTask (wake, try_block, etc) in kill.rs.Ben Blum-2/+95
2013-07-20Do a task-killed check at the start of task 'timeslices'.Ben Blum-1/+38
2013-07-20Implement KillHandle::kill() and friends (unkillable, atomically). Close #6377.Ben Blum-37/+227
2013-07-20Add tests for KillHandleBen Blum-0/+140
2013-07-20Remove join_latchBen Blum-654/+0
2013-07-20Add kill::Death for task death services and use it in Task.Ben Blum-22/+79
2013-07-20Add KillHandle and implement exit code propagation to replace join_latchBen Blum-3/+134
2013-07-20Add UnsafeAtomicRcBox::try_unwrap()Ben Blum-1/+68
2013-07-20Reimplement ARC::unwrap() and friends.Ben Blum-19/+211
2013-07-20Add AtomicOption::fill() and AtomicOption::is_empty()Ben Blum-0/+38
2013-07-20Remove redundant Atomic{Ui,I}nt types from unstable::syncBen Blum-68/+0
2013-07-20Add Option::take_map{,_default}()Ben Blum-0/+14
2013-07-20Add Either::expect_{left,right}Ben Blum-6/+26
2013-07-20auto merge of #7855 : brson/rust/rt-overcommit, r=pcwaltonbors-5/+4
Too much overcommit here exhausts the low fd limit on OS X.
2013-07-19std: Remove old magic core modBrian Anderson-42/+32
2013-07-19iterator: impl DoubleEndedIterator for adaptorsDaniel Micay-0/+121
2013-07-19std::rt: Remove an obsolete FIXME. #7757Brian Anderson-5/+0
2013-07-19std::rt: Use a constant 4 threads for multithreaded sched tests. #7772Brian Anderson-5/+4
Too much overcommit here exhausts the low fd limit on OS X.
2013-07-19Missed the methods of UdpWatcher.Eric Reed-18/+16
2013-07-19Changed methods on UDP sockets and TCP/UDP watchers to &mut self to reflect ↵Eric Reed-64/+65
that libuv may change the underlying handle.
2013-07-18auto merge of #7857 : blake2-ppc/rust/fix-test-warnings, r=alexcrichtonbors-9/+8
Fix warnings that only show up when compiling the tests for libstd, libextra and one in librusti. Only trivial changes.
2013-07-18auto merge of #7856 : brson/rust/no-thread-per-core, r=pcwaltonbors-21/+1
This doesn't make sense under the new scheduler.
2013-07-18rustpkg: Make rustpkg commands work without a package IDTim Chevalier-1/+41
`rustpkg build`, if executed in a package source directory inside a workspace, will now build that package. By "inside a workspace" I mean that the parent directory has to be called `src`, and rustpkg will create a `build` directory in .. if there isn't already one. Same goes for `rustpkg install` and `rustpkg clean`. For the time being, `rustpkg build` (etc.) will still error out if you run it inside a directory whose parent isn't called `src`. I'm not sure whether or not it's desirable to have it do something in a non-workspace directory.
2013-07-18auto merge of #7854 : brson/rust/rt-test-threads, r=pcwaltonbors-1/+1
2013-07-18librustc: Forbid `&` pointers (other than `&'static`) inside `@` boxes.Patrick Walton-5/+5
This makes custom borrowing implementations for custom smart pointers sound.
2013-07-18auto merge of #7833 : blake2-ppc/rust/hashmap-consume, r=alexcrichtonbors-65/+21
Updated all users of HashMap, HashSet ::consume() to use .consume_iter(). Since .consume_iter() takes the map or set by value, it needs awkward extra code to in librusti's use of @mut HashMap, where the map value can not be directly moved out. Addresses issue #7719
2013-07-18auto merge of #7842 : thestinger/rust/closure, r=huonwbors-37/+24
2013-07-18hashmap: Remove .consume() has rename .consume_iter() to .consume()blake2-ppc-65/+21
Updated all users of HashMap, HashSet old .consume() to use .consume() with a for loop. Since .consume() takes the map or set by value, it needs awkward extra code to in librusti's use of @mut HashMap, where the map value can not be directly moved out.
2013-07-18repr: add a test case for @mut inside another typeDaniel Micay-2/+2
2013-07-18fix repr of @mut vectorsDaniel Micay-6/+5
2013-07-18Fix warnings in libstd and librusti testsblake2-ppc-9/+8
2013-07-17fix repr of unique vectors with stage0 libstdDaniel Micay-0/+9
Closes #7860
2013-07-17libsyntax: Remove some multi-gigabyte clones that were preventing ↵Patrick Walton-0/+7
bootstrapping on Windows.
2013-07-17test: Fix tests.Patrick Walton-4/+4
2013-07-17librustc: Remove the `Copy` bound from the language.Patrick Walton-7/+1
2013-07-17test: Fix tests.Patrick Walton-24/+21
2013-07-17librustc: Remove all uses of the `Copy` bound.Patrick Walton-43/+34
2013-07-17librustc: Remove all uses of "copy".Patrick Walton-206/+273
2013-07-17librustc: Add a lint mode for unnecessary `copy` and remove a bunch of them.Patrick Walton-5/+5
2013-07-17rm unnecessary stage0 `zero_memory` fnDaniel Micay-28/+6
2013-07-17std::rt: Rename RUST_TEST_THREADS to RUST_RT_TEST_THREADSBrian Anderson-1/+1
2013-07-17rm unused visit_str method from TyVisitorDaniel Micay-1/+2
2013-07-17auto merge of #7841 : alexcrichton/rust/tls++, r=huonwbors-16/+145
Simulates borrow checks for '@mut' boxes, or at least it's the same idea. This allows you to store owned values, but mutate them while they're owned by TLS. This should remove the necessity for a `pop`/`set` pattern to mutate data structures in TLS.
2013-07-16auto merge of #7831 : ozten/rust/issues-7764-swap_unwarp-take-unwrap, r=pcwaltonbors-25/+25
Fixes Issue #7764 Running `make check` I do get a failure: test rt::io::extensions::test::push_bytes ... ok rustest rt::comm::test::oneshot_single_thread_send_port_close ... t: task failed at 'Unhandled condition: read_error: {kind: OtherIoError, desc: "Placeholder error. You shouldn\'t be seeing this", detail: None}', /Users/shout/Projects/rust/src/libstd/condition.rs:50 /bin/sh: line 1: 35056 Abort trap: 6 x86_64-apple-darwin/stage2/test/stdtest-x86_64-apple-darwin --logfile tmp/check-stage2-T-x86_64-apple-darwin-H-x86_64-apple-darwin-std.log make: *** [tmp/check-stage2-T-x86_64-apple-darwin-H-x86_64-apple-darwin-std.ok] Error 134
2013-07-16Add a `get_mut` method for TLSAlex Crichton-16/+145
Simulates borrow checks for '@mut' boxes, or at least it's the same idea.
2013-07-16auto merge of #7684 : ↵bors-43/+160
pnkfelix/rust/fsk-invert-range-rev-halfclosedness-issue5270-2ndpr, r=cmr Changes int/uint range_rev to iterate over range `(hi,lo]` instead of `[hi,lo)`. Fix #5270. Also: * Adds unit tests for int/uint range functions * Updates the uses of `range_rev` to account for the new semantics. (Note that pretty much all of the updates there were strict improvements to the code in question; yay!) * Exposes new function, `range_step_inclusive`, which does the range `[hi,lo]`, (at least when `hi-lo` is a multiple of the `step` parameter). * Special-cases when `|step| == 1` removing unnecessary bounds-check. (I did not check whether LLVM was already performing this optimization; I figure it would be a net win to not leave that analysis to the compiler. If reviewer objects, I can easily remove that from the refactored code.) (This pull request is a rebased version of PR #7524, which went stale due to recent unrelated changes to num libraries.)
2013-07-16Rename Option swap_unwrap to take_unwrap. Fixes Issue#7764Austin King-25/+25
2013-07-15auto merge of #7816 : thestinger/rust/header, r=huonwbors-17/+129
Note that the headers are still on `~[T]` when `T` is managed. This is continued from #7605, which removed all the code relying on the headers and removed them from `~T` for non-managed `T`.
2013-07-15remove headers from unique vectorsDaniel Micay-17/+129