summary refs log tree commit diff
path: root/src/libextra
AgeCommit message (Collapse)AuthorLines
2013-09-25auto merge of #9475 : alexcrichton/rust/rustdoc++, r=cmrbors-32/+31
The commit messages are a good technical summary, a good visual summary (contrib is this version): Pub use statements now rendered. Notice how almost all components are also clickable! * http://static.rust-lang.org/doc/master/std/prelude/index.html * http://www.contrib.andrew.cmu.edu/~acrichto/doc/std/prelude/index.html Private things hidden by default (for at least some approximation of privacy). I hope to improve this once privacy is totally ironed out. * http://static.rust-lang.org/doc/master/std/hashmap/struct.HashMap.html * http://www.contrib.andrew.cmu.edu/~acrichto/doc/std/hashmap/struct.HashMap.html Unindentation now works properly: * http://static.rust-lang.org/doc/master/extra/getopts/index.html * http://www.contrib.andrew.cmu.edu/~acrichto/doc/extra/getopts/index.html Also sundown has massively reduced compilation time (of docs, not the of the crates)
2013-09-25rustdoc: Strip hidden docs by default.Alex Crichton-2/+1
2013-09-25rustdoc: Improve comment strippingAlex Crichton-2/+2
There is less implicit removal of various comment styles, and it also removes extraneous stars occasionally found in docblock comments. It turns out that the bug for getops was just a differently formatted block. Closes #9425 Closes #9417
2013-09-25rustdoc: Change all code-blocks with a scriptAlex Crichton-28/+28
find src -name '*.rs' | xargs sed -i '' 's/~~~.*{\.rust}/```rust/g' find src -name '*.rs' | xargs sed -i '' 's/ ~~~$/ ```/g' find src -name '*.rs' | xargs sed -i '' 's/^~~~$/ ```/g'
2013-09-25auto merge of #9345 : Dretch/rust/digest-result-bytes, r=cmrbors-14/+16
I would find this function useful.
2013-09-25auto merge of #9432 : alexcrichton/rust/correct-item-visibility, r=pcwaltonbors-8/+8
This fixes private statics and functions from being usable cross-crates, along with some bad privacy error messages. This is a reopening of #8365 with all the privacy checks in privacy.rs instead of resolve.rs (where they should be anyway). These maps of exported items will hopefully get used for generating documentation by rustdoc Closes #8592
2013-09-24Don't use libc::exit. #9473Brian Anderson-12/+11
This can cause unexpected errors in the runtime when done while scheduler threads are still initializing. Required some restructuring of the main_args functions in our libraries.
2013-09-24Correctly encode item visibility in metadataAlex Crichton-8/+8
This fixes private statics and functions from being usable cross-crates, along with some bad privacy error messages. This is a reopening of #8365 with all the privacy checks in privacy.rs instead of resolve.rs (where they should be anyway). These maps of exported items will hopefully get used for generating documentation by rustdoc Closes #8592
2013-09-23librustc: Fix merge fallout.Patrick Walton-10/+23
2013-09-23test: Fix rustdoc and tests.Patrick Walton-1/+4
2013-09-23librustc: Remove `@fn` managed closures from the language.Patrick Walton-30/+24
2013-09-23libsyntax: Introduce routines and remove all `@fn`s from libsyntax save the ↵Patrick Walton-19/+31
old visitor
2013-09-22Add docs for extra::semverScott Lawrence-4/+30
2013-09-23std: merge rand::{Rng,RngUtil} with default methods.Huon Wilson-25/+24
Also, documentation & general clean-up: - remove `gen_char_from`: better served by `sample` or `choose`. - `gen_bytes` generalised to `gen_vec`. - `gen_int_range`/`gen_uint_range` merged into `gen_integer_range` and made to be properly uniformly distributed. Fixes #8644. Minor adjustments to other functions.
2013-09-21Update version numbers to 0.8Brian Anderson-1/+1
2013-09-21auto merge of #9380 : thestinger/rust/par, r=alexcrichtonbors-143/+0
This was a dead end experiment, and not a sensible way of implementing generic data parallelism. This also removes the `graph500-bfs.rs` benchmark because it relies on `extra::par`. Closes #5626
2013-09-21auto merge of #9360 : huonw/rust/4449, r=pnkfelixbors-6/+2
Fixes #4449. (Ran it through try-bsd: http://buildbot.rust-lang.org/builders/try-bsd/builds/451)
2013-09-20Implement a web backend for rustdoc_ngAlex Crichton-0/+4
This large commit implements and `html` output option for rustdoc_ng. The executable has been altered to be invoked as "rustdoc_ng html <crate>" and it will dump everything into the local "doc" directory. JSON can still be generated by changing 'html' to 'json'. This also fixes a number of bugs in rustdoc_ng relating to comment stripping, along with some other various issues that I found along the way. The `make doc` command has been altered to generate the new documentation into the `doc/ng/$(CRATE)` directories.
2013-09-21drop `extra::par`Daniel Micay-143/+0
This was a dead end experiment, and not a sensible way of implementing generic data parallelism. This also removes the `graph500-bfs.rs` benchmark because it relies on `extra::par`. Closes #5626
2013-09-20Uncomment a test. Fixes #4449.Huon Wilson-6/+2
2013-09-20auto merge of #9320 : ↵bors-5/+5
chris-morgan/rust/unreachable-macro-part-two-of-two-containing-the-destruction-of-the-unreachable-function, r=alexcrichton This is the second of two parts of #8991, now possible as a new snapshot has been made. (The first part implemented the unreachable!() macro; it was #8992, 6b7b8f2682.) ``std::util::unreachable()`` is removed summarily; any code which used it should now use the ``unreachable!()`` macro. Closes #9312. Closes #8991.
2013-09-20Add a new Digest.result_bytes convenience function.Gareth Smith-14/+16
2013-09-19Clean up unused importsSteven Fackler-6/+1
2013-09-19Add Future::spawn_withSteven Fackler-0/+23
2013-09-19Modernize extra::future APISteven Fackler-72/+64
2013-09-19Removed future's destructorSteven Fackler-9/+0
It was only there to prevent Future from being copyable, but it's noncopyable anyways since it contains a ~fn.
2013-09-19auto merge of #9267 : Kimundi/rust/master, r=huonwbors-506/+533
2013-09-19Turned extra::getopts functions into methodsMarvin Löbel-506/+533
Some minor api and doc adjustments
2013-09-19auto merge of #9291 : jzelinskie/rust/remove-cond, r=alexcrichtonbors-2/+2
This is my first contribution, so please point out anything that I may have missed. I consulted IRC and settled on `match () { ... }` for most of the replacements.
2013-09-19Replace unreachable() calls with unreachable!().Chris Morgan-5/+5
This is the second of two parts of #8991, now possible as a new snapshot has been made. (The first part implemented the unreachable!() macro; it was #8992, 6b7b8f2682.) ``std::util::unreachable()`` is removed summarily; any code which used it should now use the ``unreachable!()`` macro. Closes #9312. Closes #8991.
2013-09-18Register new snapshotsAlex Crichton-59/+1
2013-09-18Remove and replace cond! Closes #9282.Jimmy Zelinskie-2/+2
2013-09-17auto merge of #9133 : dcrewi/rust/bigint-random-range, r=huonwbors-2/+140
2013-09-17Generate random big integers within a rangeDavid Creswick-2/+140
Thanks to @huonw for feedback
2013-09-17remove unnecessary transmutesDaniel Micay-1/+0
2013-09-17auto merge of #9244 : thestinger/rust/drop, r=catamorphismbors-16/+13
This doesn't close any bugs as the goal is to convert the parameter to by-value, but this is a step towards being able to make guarantees about `&T` pointers (where T is Freeze) to LLVM.
2013-09-16switch Drop to `&mut self`Daniel Micay-16/+13
2013-09-16auto merge of #9231 : cmr/rust/enum_encoding, r=catamorphismbors-15/+24
2013-09-16auto merge of #9211 : klutzy/rust/win32-fix, r=alexcrichtonbors-9/+0
2013-09-16extra::json: use a different encoding for enums.Corey Richardson-15/+24
It now uses `{"type": VariantName, "fields": [...]}`, which, according to @Seldaek, since all enums will have the same "shape" rather than being a weird ad-hoc array, will optimize better in javascript JITs. It also looks prettier, and makes more sense.
2013-09-16Have workcache::test put `foo.c` in the same directory it runs in.Lindsey Kuper-7/+16
This prevents a stray `foo.c` from being left lying around after tests run, and it's more consistent with the rest of the code.
2013-09-16extra::fileinput: Enable tests on Win32klutzy-9/+0
They were blocked by #8810, but it works now.
2013-09-15Remove {uint,int,u64,i64,...}::from_str,from_str_radixblake2-ppc-8/+6
Remove these in favor of the two traits themselves and the wrapper function std::from_str::from_str. Add the function std::num::from_str_radix in the corresponding role for the FromStrRadix trait.
2013-09-15Use std::iter::range_stepblake2-ppc-26/+18
Use the iterator version instead of the old uint::/int::range_step functions.
2013-09-14auto merge of #9180 : blake2-ppc/rust/reduce-either, r=catamorphismbors-27/+25
Work a bit towards #9157 "Remove Either". These instances don't need to use Either and are better expressed in other ways (removing allocations and simplifying types).
2013-09-14auto merge of #9115 : erickt/rust/master, r=ericktbors-41/+88
This is a series of patches to modernize option and result. The highlights are: * rename `.unwrap_or_default(value)` and etc to `.unwrap_or(value)` * add `.unwrap_or_default()` that uses the `Default` trait * add `Default` implementations for vecs, HashMap, Option * add `Option.and(T) -> Option<T>`, `Option.and_then(&fn() -> Option<T>) -> Option<T>`, `Option.or(T) -> Option<T>`, and `Option.or_else(&fn() -> Option<T>) -> Option<T>` * add `option::ToOption`, `option::IntoOption`, `option::AsOption`, `result::ToResult`, `result::IntoResult`, `result::AsResult`, `either::ToEither`, and `either::IntoEither`, `either::AsEither` * renamed `Option::chain*` and `Result::chain*` to `and_then` and `or_else` to avoid the eventual collision with `Iterator.chain`. * Added a bunch of impls of `Default` * Added a `#[deriving(Default)]` syntax extension * Removed impls of `Zero` for `Option<T>` and vecs.
2013-09-13Remove all usage of change_dir_lockedAlex Crichton-94/+3
While usage of change_dir_locked is synchronized against itself, it's not synchronized against other relative path usage, so I'm of the opinion that it just really doesn't help in running tests. In order to prevent the problems that have been cropping up, this completely removes the function. All existing tests (except one) using it have been moved to run-pass tests where they get their own process and don't need to be synchronized with anyone else. There is one now-ignored rustpkg test because when I moved it to a run-pass test apparently run-pass isn't set up to have 'extern mod rustc' (it ends up having linkage failures).
2013-09-14extra::workcache: Remodel the (internal) struct Workblake2-ppc-16/+16
Using an enum with two cases for `Work` reveals simpler code than the previous `Option<Either<X, Y>>` representation.
2013-09-14extra::test: Use Result instead of Either.blake2-ppc-11/+9
OptRes was combining a successful value with an error message, which fits the Result type perfectly.
2013-09-13auto merge of #9170 : alexcrichton/rust/flaky-fileinput, r=ericktbors-188/+0
The glob tests cannot change the current working directory because the other tests (namely the fileinput ones) depend on the current working directory not changing.