Commit Graph

22639 Commits

Author SHA1 Message Date
Alex Crichton 3d5873fa42 rustdoc: Fix merge fallout 2013-09-25 14:28:20 -07:00
Alex Crichton 38eab97d16 rustdoc: Fix an unindentation bug when collapsing
Turns out eagerly trimming comes back to bite you :(
2013-09-25 14:27:43 -07:00
Alex Crichton bcb8657842 rustdoc: Collapse before unindenting
Doesn't make much sense to unindent each line individually and *then* collapse
them all together.
2013-09-25 14:27:43 -07:00
Alex Crichton e7fa081c18 rustdoc: Reduce ambiguity with clean::Type
The "Unresolved" variant could be completely removed becuase it turns out that
the interim state only very briefly lives.
2013-09-25 14:27:43 -07:00
Alex Crichton f648690234 rustdoc: Strip hidden docs by default. 2013-09-25 14:27:43 -07:00
Alex Crichton c4219a4783 rustdoc: Highlight function names
Closes #9460
2013-09-25 14:27:42 -07:00
Alex Crichton 5636ca625e rustdoc: Start rendering variants (redirect to enum)
This allows reasonable behavior when an enum is clicked in an import.
2013-09-25 14:27:42 -07:00
Alex Crichton 5c6f8a976f rustdoc: Linkify all reexports.
This way each component of a reexport path is click-able to the destination that
it's referencing.
2013-09-25 14:27:42 -07:00
Alex Crichton c838351ba6 rustdoc: Implement stripping based on privacy
This will probably need to get tweaked once the privacy rules have been fully
agreed on, but for now this has all of the infrastructure necessary for
filtering out private items.

Closes #9410
2013-09-25 14:27:42 -07:00
Alex Crichton acab4a8c8e rustdoc: Emit purity to function dox for traits
Closes #3804
2013-09-25 14:27:42 -07:00
Alex Crichton eaaf2bd41f rustdoc: Add the ability to list all passes
In doing so, also remove the collapse-privacy pass because it's a little
over-zealous and may not be right 100% of the time (not used right now as well)
2013-09-25 14:27:42 -07:00
Alex Crichton bcc7daa6bc rustdoc: Improve comment stripping
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-25 14:27:42 -07:00
Alex Crichton 35c0cdff5a rustdoc: Enable various useful markdown extensions 2013-09-25 14:27:42 -07:00
Alex Crichton 3585c64d09 rustdoc: Change all code-blocks with a script
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-25 14:27:42 -07:00
Alex Crichton db28c29980 rustdoc: Use sundown for markdown highlighting
This takes rendering times of documentation down from 30s to 0.5s. Kinda sad
that none of the parallelism is needed, but oh well!

Closes #7380
cc #3546
2013-09-25 14:27:42 -07:00
Alex Crichton 6aba140fa7 rustdoc: Add sundown to src/rt/
This also starts compiling it in the same manner as linenoise, it's just bundled
with librustrt directly, and we export just a few symbols out of it.
2013-09-25 14:27:41 -07:00
bors af25f58ac3 auto merge of #9498 : catamorphism/rust/rust-path-hack-fix, r=cmr,metajack
r? @metajack
2013-09-25 12:45:54 -07:00
bors 0186473bd2 auto merge of #9493 : huonw/rust/move-tuples, r=thestinger
The old behaviour of `foo.n0()` is replaced by `foo.n0_ref().clone()`.
2013-09-25 11:26:07 -07:00
Tim Chevalier 667adad26f rustpkg: Search for packages correctly when using the rust_path_hack
Previously, any package would match any other package ID when searching
using the rust_path_hack, so long as the directory had one or more crate
files in it. Now, rustpkg checks that the parent directory matches the
package ID.

Closes #9273
2013-09-25 11:12:24 -07:00
Tim Chevalier 22654165c6 std: Add an is_parent_of method to Path 2013-09-25 11:08:30 -07:00
bors b6f74e696f auto merge of #9428 : alexcrichton/rust/llvm-zlib-and-libffi, r=pnkfelix
This should help bring fewer dependencies in to the snapshots.

Closes #9397
2013-09-25 10:01:00 -07:00
bors 5375cf8718 auto merge of #9491 : thestinger/rust/noreturn, r=huonw
Closes #9317
2013-09-25 07:25:56 -07:00
bors 797a373cd1 auto merge of #9492 : pnkfelix/rust/fsk-syntax-visit-refactor-remainder, r=huonw
r? anyone

Part of #7081.

Removed many unnecessary context arguments, turning them into visitors.  Removed some @allocation.

If this lands, then I think the only thing left that is unaddressed are:
 * the various lint visitors, and
 * middle/privacy.rs, which has `impl<'self> Visitor<&'self method_map> for PrivacyVisitor`
2013-09-25 06:10:57 -07:00
bors df97d23c71 auto merge of #9455 : jesseray/rust/master, r=pnkfelix
In "/src/libstd/char.rs", there are function and method definitions for `is_lowercase()`, `is_uppercase()`, `is_whitespace()`, etc. However, there was no function or method for control characters, so I added the `is_control()` function and method definitions along with documentation and tests. Running `./configure && make check` shows that all tests for `is_control()` pass.
2013-09-25 03:55:56 -07:00
bors f6c9ff392b auto merge of #9481 : jbclements/rust/minor-cleanup, r=cmr
Small stuff... might as well get it into the tree. One new test case, some issue # cleanup, remove some unused imports.
2013-09-25 02:15:59 -07:00
Felix S. Klock II 37481641b1 Fold env into CheckItemRecursionVisitor. 2013-09-25 11:01:43 +02:00
Felix S. Klock II 1ce1aae282 Fold ErrorCheckVisitor into Liveness. Removed some @allocation. 2013-09-25 11:01:09 +02:00
Felix S. Klock II ffc9209471 Fold KindAnalysisVisitor into the Context. Removed unused current_item state. 2013-09-25 11:00:36 +02:00
Huon Wilson 04ca6dcd84 std: Replace CloneableTuple with Tuple, which takes self by-val.
The old behaviour of `foo.n0()` is replaced by `foo.n0_ref().clone()`.
2013-09-25 19:00:08 +10:00
Felix S. Klock II 339027ec15 Move unchanging portions of Context over to the Visitor. 2013-09-25 10:59:56 +02:00
Felix S. Klock II bc13365007 Move unchanging portions of context over to the Visitor. 2013-09-25 10:59:31 +02:00
Felix S. Klock II 9d0727736b Fold context into CalleeTranslationVisitor. 2013-09-25 10:59:06 +02:00
Felix S. Klock II 2ceebf1070 Fold context into TransItemVisitor. 2013-09-25 10:58:40 +02:00
Felix S. Klock II 411dce85ea Fold type_use.rs Context into its Visitor. 2013-09-25 10:55:50 +02:00
Felix S. Klock II eac429cc9e Move the linearly-updated flag state into the Visitor. 2013-09-25 10:55:04 +02:00
Daniel Micay e76bfae7eb add `noreturn` attribute to functions returning !
Closes #9317
2013-09-25 04:45:29 -04:00
bors 4531184614 auto merge of #9432 : alexcrichton/rust/correct-item-visibility, r=pcwalton
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-25 00:55:53 -07:00
Alex Crichton 30862a64c2 Fix run-pass tests to have 'pub fn main'
This is required by the check-fast target because each test is slurped up into a
submodule.
2013-09-25 00:43:37 -07:00
bors dad32f703d auto merge of #9480 : brson/rust/noexit, r=thestinger
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-24 23:40:54 -07:00
bors 6ed338caa7 auto merge of #9478 : brson/rust/authors, r=alexcrichton 2013-09-24 21:40:57 -07:00
bors d7bb40c50c auto merge of #9470 : luqmana/rust/bba, r=brson
#8431

~~@brson: do we need to bump up the cratemap version for this change?~~ Tis a no.
2013-09-24 20:25:58 -07:00
bors 512f7781fe auto merge of #9335 : alexcrichton/rust/issue-7945, r=thestinger
As documented in issue #7945, these literal identifiers are all accepted by rust
today, but they should probably be disallowed (especially `'''`). This changes
all escapable sequences to being *required* to be escaped.

Closes #7945

I wanted to write the tests with more exact spans, but I think #9308 will be fixing that?
2013-09-24 19:06:01 -07:00
Alex Crichton 2661b633c5 Disallow char literals which should be escaped
As documented in issue #7945, these literal identifiers are all accepted by rust
today, but they should probably be disallowed (especially `'''`). This changes
all escapable sequences to being *required* to be escaped.

Closes #7945
2013-09-24 17:56:42 -07:00
bors 893ba18cd1 auto merge of #9474 : thestinger/rust/internal, r=alexcrichton
the entry point is wrapped with what should be the only public function
2013-09-24 17:51:04 -07:00
Luqman Aden 90e009f9b6 Remove the annihilate function from the crate map. Fixes #8431 2013-09-24 20:34:11 -04:00
Brian Anderson 6d03897376 Don't use libc::exit. #9473
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-24 16:34:23 -07:00
Brian Anderson f285506b32 Update AUTHORS.txt 2013-09-24 16:26:27 -07:00
John Clements 0269850cc2 added test case for tokenization of macro_rules 2013-09-24 16:00:58 -07:00
Daniel Micay 5867bbd794 mark functions internal if not building a library
the entry point is wrapped with what should be the only public function
2013-09-24 18:50:28 -04:00
bors a7d68adbdd auto merge of #9336 : alexcrichton/rust/issue-7981, r=catamorphism
Progress on #7981

This doesn't completely close the issue because `struct A;` is still allowed, and it's a much larger change to disallow that. I'm also not entirely sure that we want to disallow that. Regardless, punting that discussion to the issue instead.
2013-09-24 15:45:57 -07:00