Jim Radford
dc49018679
sync: remove unsafe and add Send+Share to Deref (enabled by autoderef vtables)
2014-04-08 00:03:11 -07:00
Alex Crichton
a49ce7f11a
sync: Switch field privacy as necessary
2014-03-31 15:47:35 -07:00
Colin Sherratt
9fc45c1f8e
Check that the old value was 1 and not 0 when dropping a Arc value.
...
Closed #13210 .
2014-03-30 15:14:43 -04:00
Alex Crichton
64a52de823
sync: Update the arc module
...
This removes the now-outdated MutexArc and RWArc types. These are superseded by
Arc<Mutex<T>> and Arc<RWLock<T>>. The only remaining arc is the one true Arc.
Additionally, the arc now has weak pointers implemented for it to assist in
breaking cycles.
This commit brings the arc api up to parity with the sibling Rc api, making them
nearly interchangeable for inter and intra task communication.
2014-03-24 17:17:46 -07:00
Flavio Percoco
576e36e674
Register new snapshots
2014-03-23 11:37:31 +01:00
Flavio Percoco
0169abd91d
sync: Remove Freeze / NoFreeze
2014-03-22 15:47:33 +01:00
Huon Wilson
6d778ff610
Remove outdated and unnecessary std::vec_ng::Vec imports.
...
(And fix some tests.)
2014-03-22 01:08:57 +11:00
Patrick Walton
af79a5aa7d
test: Make manual changes to deal with the fallout from removal of
...
`~[T]` in test, libgetopts, compiletest, librustdoc, and libnum.
2014-03-21 23:37:21 +11:00
Flavio Percoco
12ecafb31d
Replace Freeze bounds with Share bounds
2014-03-20 10:16:55 +01:00
Daniel Micay
ce620320a2
rename std::vec -> std::slice
...
Closes #12702
2014-03-20 01:30:27 -04:00
Alex Crichton
7858065113
std: Rename Chan/Port types and constructor
...
* Chan<T> => Sender<T>
* Port<T> => Receiver<T>
* Chan::new() => channel()
* constructor returns (Sender, Receiver) instead of (Receiver, Sender)
* local variables named `port` renamed to `rx`
* local variables named `chan` renamed to `tx`
Closes #11765
2014-03-13 13:23:29 -07:00
Huon Wilson
198caa87cd
Update users for the std::rand -> librand move.
2014-03-12 11:31:43 +11:00
Huon Wilson
fbdd3b2ef6
sync: Rename arc::Condvar to arc::ArcCondvar.
...
The sync submodule also has a `Condvar` type, and its reexport was
shadowing the `arc` type, making it crate-private.
2014-03-01 00:11:56 +11:00
Kevin Ballard
66bed17641
Remove Freeze bounds from sync::MutexArc
...
With Rc no longer trying to statically prevent cycles (and thus no
longer using the Freeze bound), it seems appropriate to remove that
restriction from MutexArc as well.
2014-02-16 21:14:15 -08:00
JeremyLetang
dd21a51d29
move concurrent stuff from libextra to libsync
2014-02-05 11:56:04 -05:00