about summary refs log tree commit diff
path: root/src/libstd
AgeCommit message (Collapse)AuthorLines
2013-03-11treemap: indentation fixesDaniel Micay-14/+14
2013-03-11treemap: make set_advance publicDaniel Micay-2/+2
2013-03-11libstd: Remove all newtype enums from std and core.Patrick Walton-14/+40
2013-03-11libsyntax: Stop parsing bare functions in preparation for switching them overPatrick Walton-2/+4
2013-03-11librustc: Replace all uses of `fn()` with `&fn()`. rs=defunPatrick Walton-210/+210
2013-03-10Correct copyright year to be 2012-2013.Ben Kelly-1/+1
Previous year range of 2011-2013 was based on file creation date. The check_license python script, however, only accepts copyrights starting in 2012 or later.
2013-03-10Fix formatting and errors in std::getopts example.Ben Kelly-5/+8
There were three issues effecting the example in the getopts rustdoc: 1. The blockquote was incorrectly formatted. Fixed by switching to using an explicit markdown code section with ```. 2. The `fail fail_str(f)` would not compile. Fixed by using `fail!()` instead of `fail`. 3. The line `matches.free[0]` produced a compile error about moving from an immutable vector. Fix by using `copy`.
2013-03-08Fix dvec-related fallout in testsAlex Crichton-15/+9
2013-03-08std: Remove uses of DVecAlex Crichton-59/+51
2013-03-07test: Fix tests.Patrick Walton-17/+27
2013-03-07librustc: Convert all uses of `assert` over to `fail_unless!`Patrick Walton-1598/+1632
2013-03-07librustc: Remove "extern mod { ... }" from librustc, librustdoc, and tests. ↵Patrick Walton-3/+6
rs=deexterning
2013-03-07libstd: Remove `extern mod { ... }` from libstd. rs=deexterningPatrick Walton-195/+238
2013-03-07De-implicit-self libstdBen Striegel-127/+128
2013-03-06Add manual &self/ and &static/ and /&self declarations thatNiko Matsakis-114/+159
are currently inferred. New rules are coming that will require them to be explicit. All add some explicit self declarations.
2013-03-06Fix bug in coherence that causes all cross-crate impls to be regarded asNiko Matsakis-0/+21
inherent impls, not just those of the `impl Type` variety.
2013-03-05core: convert vec::{last,last_opt} to return referencesErick Tryzelaar-4/+4
2013-03-05std: remove an unnecessary copy from workcacheErick Tryzelaar-1/+1
2013-03-05auto merge of #5233 : bstrie/rust/deimpselfcore, r=graydonbors-9/+9
2013-03-05auto merge of #5212 : thestinger/rust/iter, r=graydonbors-2/+2
A small step towards fixing #2827
2013-03-04De-implicit-self libcoreBen Striegel-9/+9
2013-03-04Adding missing imports for tests, and gate off othersAlex Crichton-6/+3
2013-03-04Remove unused imports throughout src/Alex Crichton-75/+2
2013-03-03rustc: MIPS32 supportJyun-Yan You-1/+20
2013-03-03replace option::iter with a BaseIter implDaniel Micay-2/+2
2013-03-02libstd: Remove `fn@`, `fn~`, and `fn&` from libstd. rs=defunPatrick Walton-40/+43
2013-03-02librustc: Forbid chained imports and fix the logic for one-level renaming ↵Patrick Walton-27/+25
imports
2013-03-02auto merge of #5196 : thestinger/rust/ord, r=catamorphismbors-81/+86
This allows `TreeMap`/`TreeSet` to fully express their requirements and reduces the comparisons from ~1.5 per level to 1 which really helps for string keys. I also added `ReverseIter` to the prelude exports because I forgot when I originally added it.
2013-03-02treemap: reimplement using TotalOrdDaniel Micay-81/+86
2013-03-02auto merge of #5137 : yjh0502/rust/empty_struct, r=nikomatsakisbors-4/+4
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-01auto merge of #5185 : ben0x539/rust/net-tcp-docs, r=brsonbors-76/+76
This changes various type_names to TypeNames and fixes the example for `tcp::accept` that was still using the old `match` syntax and `{|args| ...}` closures. The `accept` example was fairly outdated. I was just going to stay away from all the IO things until the scheduler revamp lands, but `accept` is probably one of the obvious starting points for networking stuff for a learner, and I don't want to get in the way of anyone's enthusiasm. Doesn't touch non-comment lines, so I hope I will get away without learning about unit tests. It doesn't seem like the test system is set up to extract tests from doc comments right now.
2013-03-02Remove REC, change related tests/docsJihyun Yu-4/+4
2013-03-01Rename core::private to core::unstable. #4743Brian Anderson-6/+6
2013-03-01`std::net::tcp` docs: Use current syntax and typesBenjamin Herr-76/+76
Doesn't touch non-comment lines. This changes various type_names to TypeNames and fixes the example for `tcp::accept` that was still using the old `match` syntax and `{|args| ...}` closures.
2013-03-01librustc: "APL2" -> "ASL2". rs=license-fixPatrick Walton-1/+1
2013-03-01Merge remote branch 'sevrak/issue-5164' into incomingPatrick Walton-2/+2
2013-02-28auto merge of #5180 : catamorphism/rust/post-snapshot, r=catamorphismbors-24/+0
* Disallow structural records everywhere * Remove all #[cfg(stage0)] stuff * Remove the last deprecated modes in libcore * Un-xfail a test
2013-02-28auto merge of #5147 : nikomatsakis/rust/remove-legacy-trait-table, ↵bors-2/+2
r=nikomatsakis r? @pcwalton
2013-02-28Remove code that was awaiting a snapshotTim Chevalier-24/+0
* Disallow structural records everywhere * Remove all #[cfg(stage0)] stuff * Remove the last deprecated modes in libcore * Un-xfail a test
2013-02-28Remove legacy object creation mode, and convert remaining uses of itNiko Matsakis-2/+2
2013-02-28auto merge of #5176 : brson/rust/unwrap_shared_mutable_state, r=nikomatsakisbors-65/+1
r? This fixes the current [random failures](http://buildbot.rust-lang.org/builders/auto-linux/builds/291/steps/test/logs/stdio) on the bots and closes #4436 by removing `unwrap_shared_mutable_state` and the code that depends on it. The result is that ARC-like things will not be unwrappable. This feature is complex and is not used outside of test cases. Note that there is not consensus to remove it. (second commit)
2013-02-28core: Remove unwrap_shared_mutable_state. #4436Brian Anderson-65/+1
2013-02-28Fix implicit leaks of imports throughout librariesAlex Crichton-208/+221
Also touch up use of 'pub' and move some tests around so the tested functions don't have to be 'pub'
2013-02-28librustc: Enforce cross-crate method privacyPatrick Walton-0/+2
2013-02-28librustc: Mark all type implementations public. rs=impl-publicityPatrick Walton-44/+44
2013-02-28Fix license attribute on cratessevrak-2/+2
2013-02-27auto merge of #5155 : bstrie/rust/dedrop, r=pcwaltonbors-1/+4
This removes all but 6 uses of `drop {}` from the entire codebase. Removing any of the remaining uses causes various non-trivial bugs; I'll start reporting them once this gets merged.
2013-02-27Turn old `drop` blocks into `Drop` traitsBen Striegel-1/+4
2013-02-27auto merge of #5140 : yjh0502/rust/issue_4458, r=catamorphismbors-1/+21
Fix is a bug fix for issue #4458. This patch is quite straight-forward. A test for result_str() is added.
2013-02-27librustc: Forbid `pub` or `priv` before trait implementationsPatrick Walton-75/+73