about summary refs log tree commit diff
path: root/src/libstd/sync.rs
AgeCommit message (Collapse)AuthorLines
2013-05-22libstd: Rename libcore to libstd and libstd to libextra; update makefiles.Patrick Walton-1351/+0
This only changes the directory names; it does not change the "real" metadata names.
2013-05-19Use assert_eq! rather than assert! where possibleCorey Richardson-5/+5
2013-05-15Rename vec::len(var) to var.len()Youngmin Yoo-7/+6
2013-05-14Fix cosmetics for fail!() callsMarvin Löbel-4/+2
2013-05-14Use static string with fail!() and remove fail!(fmt!())Björn Steinbrink-5/+5
fail!() used to require owned strings but can handle static strings now. Also, it can pass its arguments to fmt!() on its own, no need for the caller to call fmt!() itself.
2013-05-13core: Move locks, atomic rc to unstable::syncBrian Anderson-1/+1
2013-05-09libstd: rename vec::each(var) to var.eachYoungmin Yoo-1/+1
2013-04-29test: Fix tests.Patrick Walton-18/+26
2013-04-29librustc: Remove `ptr::addr_of`.Patrick Walton-2/+2
2013-04-27only use #[no_core] in libcoreDaniel Micay-2/+0
2013-04-20Replaced many instances of reinterpret_cast with transmuteMatthijs Hofstra-2/+2
2013-04-16libcore,std,syntax,rustc: move tests into `mod tests`, make them private (no ↵Huon Wilson-36/+36
pub mod or pub fn).
2013-04-14std: remove unused unsafe blocks/functionsAlex Crichton-38/+28
2013-04-08Removing some mutable fields in libstdAlex Crichton-2/+1
2013-03-29librustc: Remove `fail_unless!`Patrick Walton-23/+23
2013-03-26librustc: Modify all code to use new lifetime binder syntaxPatrick Walton-14/+14
2013-03-26option: rm functions that duplicate methodsDaniel Micay-6/+5
2013-03-22librustc: Add explicit lifetime binders and new lifetime notation in ↵Patrick Walton-18/+21
core/std/syntax/rustc
2013-03-21librustc: Forbid destructors from being attached to any structs that might ↵Patrick Walton-1/+11
contain non-Owned fields. r=nmatsakis
2013-03-18libsyntax: Stop parsing old lifetimes, except for the ones on data type ↵Patrick Walton-2/+2
declarations.
2013-03-18librustc: Convert all uses of old lifetime notation to new lifetime ↵Patrick Walton-12/+12
notation. rs=delifetiming
2013-03-15impl Clone for ~T, ~[T], ~strBen Striegel-11/+11
2013-03-13librustc: Remove "base types" from the language.Patrick Walton-5/+5
2013-03-11libstd: Remove all newtype enums from std and core.Patrick Walton-1/+2
2013-03-11librustc: Replace all uses of `fn()` with `&fn()`. rs=defunPatrick Walton-16/+16
2013-03-07librustc: Convert all uses of `assert` over to `fail_unless!`Patrick Walton-23/+23
2013-03-07De-implicit-self libstdBen Striegel-7/+7
2013-03-06Add manual &self/ and &static/ and /&self declarations thatNiko Matsakis-46/+51
are currently inferred. New rules are coming that will require them to be explicit. All add some explicit self declarations.
2013-03-04Remove unused imports throughout src/Alex Crichton-3/+0
2013-03-02auto merge of #5137 : yjh0502/rust/empty_struct, r=nikomatsakisbors-2/+2
The fix is straight-forward, but there are several changes while fixing the issue. 1) disallow `mut` keyword when making a new struct In code base, there are following code, ```rust struct Foo { mut a: int }; let a = Foo { mut a: 1 }; ``` This is because of structural record, which is deprecated corrently (see issue #3089) In structural record, `mut` keyword should be allowd to control mutability. But without structural record, we don't need to allow `mut` keyword while constructing struct. 2) disallow structural records in parser level This is related to 1). With structural records, there is an ambiguity between empty block and empty struct To solve the problem, I change parser to stop parsing structural records. I think this is not a problem, because structural records are not compiled already. Misc. issues There is an ambiguity between empty struct vs. empty match stmt. with following code, ```rust match x{} {} ``` Two interpretation is possible, which is listed blow ```rust match (x{}) {} // matching with newly-constructed empty struct (match x{}) {} // matching with empty enum(or struct) x // and then empty block ``` It seems that there is no such code in rust code base, but there is one test which uses empty match statement: https://github.com/mozilla/rust/blob/incoming/src/test/run-pass/issue-3037.rs All other cases could be distinguished with look-ahead, but this can't be. One possible solution is wrapping with parentheses when matching with an uninhabited type. ```rust enum what { } fn match_with_empty(x: what) -> ~str { match (x) { //use parentheses to remove the ambiguity } } ```
2013-03-02Remove REC, change related tests/docsJihyun Yu-2/+2
2013-03-01Rename core::private to core::unstable. #4743Brian Anderson-1/+1
2013-02-28Fix implicit leaks of imports throughout librariesAlex Crichton-2/+3
Also touch up use of 'pub' and move some tests around so the tested functions don't have to be 'pub'
2013-02-28librustc: Mark all type implementations public. rs=impl-publicityPatrick Walton-10/+10
2013-02-27libsyntax: Forbid `~mut` and `~const`. rs=demutingPatrick Walton-5/+6
2013-02-21core: Extract comm from pipes. #4742Brian Anderson-30/+30
2013-02-20librustc: Separate most trait bounds with '+'. rs=plussingPatrick Walton-3/+3
2013-02-15libstd: Get rid of `move`.Luqman Aden-43/+43
2013-02-14librustc: Replace `impl Type : Trait` with `impl Trait for Type`. ↵Patrick Walton-10/+10
rs=implflipping
2013-02-13Remove die!, raplace invocations with fail! Issue #4524 pt 3Nick Desaulniers-8/+8
2013-02-07Make ~fn non-copyable, make &fn copyable, split barefn/closure types,Niko Matsakis-2/+0
correct handling of moves for struct-record update. Part of #3678. Fixes #2828, #3904, #4719.
2013-02-04Merge remote-tracking branch 'bstrie/rimov' into incomingBrian Anderson-11/+11
Conflicts: src/libsyntax/parse/parser.rs src/test/bench/graph500-bfs.rs src/test/bench/sudoku.rs src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs src/test/run-pass/empty-mutable-vec.rs src/test/run-pass/foreach-nested.rs src/test/run-pass/swap-2.rs
2013-01-31Replace most invocations of fail keyword with die! macroNick Desaulniers-10/+10
2013-01-30Repair RIMOV damage to libstdBen Striegel-1/+1
2013-01-30RIMOV, round 10Ben Striegel-10/+10
find ./ -type f -name "*.rs" -exec sed -i "s/~\[mut /~\[/g" {} \;
2013-01-29libstd: De-export libstd. rs=deexportPatrick Walton-42/+52
2013-01-29librustc: Disallow trait bounds in types, enumerations, and structure ↵Patrick Walton-2/+2
definitions. r=tjc
2013-01-23core: Rename to_mut and from_mut to cast_to_mut and cast_from_mutTrinick-1/+1
2013-01-15Swap return value order in pipes::oneshot Issue #4496Nick Desaulniers-2/+2
2013-01-13Merge pull request #4444 from JensNockert/pub-semaphoreTim Chevalier-1/+1
Make std::sync::semaphore() public