Commit Graph

499 Commits

Author SHA1 Message Date
Brian Anderson
d41af13334 rustc: Extract session::basic_options from rustdoc 2012-05-08 22:33:45 -07:00
Tim Chevalier
85fbfa25d7 Revert "Eliminate a copy in syntax::parse::new_parser_from_file"
This reverts commit 2bb3b63ec4.

(I was confused.)
2012-04-30 11:52:07 -07:00
Tim Chevalier
2bb3b63ec4 Eliminate a copy in syntax::parse::new_parser_from_file
Fixing a FIXME turned out to be pretty involved. I added an io function
that returns a unique boxed string (for the contents of a file) rather than
a string, and went from there. Also made the src field of codemap a unique
boxed string. This doesn't seem to make that much difference in amount of
allocation according to valgrind (disappointingly), but I also had to introduce
a copy somewhere else pending a new snapshot, so maybe that's it.
2012-04-30 10:44:31 -07:00
Niko Matsakis
825fd1808e lots of work to make iface/impls parameterized by regions
- paths can now take region parameters, replacing the dirty hack
  I was doing before of abusing vstores.  vstores are now a bit
  of a hack though.

- fix various small bugs:
  - we never checked that iface types were compatible when casting
    to an iface with `as`
  - we allowed nonsense like int<int>
  - and more! (actually that may be it)
2012-04-25 19:26:56 -07:00
Tim Chevalier
f7641286b2 Allow classes to be cast to ifaces that are in the same crate
I had to xfail one existing test case (class-implements-int) because,
I think, of the same bug described in #2272.
2012-04-23 21:15:03 -07:00
Tim Chevalier
1c39fda0ea Rename option::get_or_default to get_default, for consistency 2012-04-23 20:52:50 -07:00
Marijn Haverbeke
9053f54498 Move map iface over to more for-friendly iteration methods 2012-04-23 15:18:19 +02:00
Brian Anderson
628e80d525 syntax: Extract attribute parsing to its own mod 2012-04-19 21:58:45 -07:00
Niko Matsakis
3c995fb8f3 make nominal types optionally parameterized by a self region.
Issue #2201.
2012-04-19 21:01:11 -07:00
Brian Anderson
9a8a04629e syntax: Put the main parser interface in mod parse 2012-04-18 10:50:50 -07:00
Niko Matsakis
4c26d70a0a new debug flag, new test 2012-04-17 12:02:36 -07:00
Brian Anderson
4f576275be syntax: Cleanup attr module. Closes #1545 2012-04-15 01:43:38 -07:00
Graydon Hoare
8a7fd4a04f Support general warnings and errors in lint pass via flags and attrs. Close #1543. 2012-04-12 17:31:49 -07:00
Brian Anderson
599cbf7a6b rustdoc: Use parallel map by default 2012-04-08 13:46:11 -07:00
Tim Chevalier
9d274ec5f2 Re-rename option functions
get_with_default (nee from_maybe) => get_default
with_option (nee maybe) => map_default
with_option_do (nee may) => iter

As per discussion of 21be1379d5
2012-04-06 12:20:13 -07:00
Marijn Haverbeke
c902eafa14 Convert old-style for loops to new-style
Most could use the each method, but because of the hack used to
disambiguate old- and new-style loops, some had to use vec::each.

(This hack will go away soon.)

Issue #1619
2012-04-06 20:38:23 +02:00
Brian Anderson
d13c0c77a2 Explicitly use version 0.2 of crates 2012-04-05 20:29:42 -07:00
Brian Anderson
bd97ee6520 rustdoc: Remove stray binary 2012-04-03 19:01:00 -07:00
Tim Chevalier
21be1379d5 Rename some core::option functions
from_maybe => get_with_default
maybe => with_option
may => with_option_do

I know these names are kind of ridiculous, but it's the best I could think of.
Feel free to bikeshed. Closes #2081
2012-04-02 16:12:49 -07:00
Brian Anderson
0e87039348 rustc: Remove the rustsyntax::attr wrapper in front 2012-03-29 14:42:31 -07:00
Graydon Hoare
b37d7e26fe Update crate URLs to point to interesting things. 2012-03-28 13:52:47 -07:00
Graydon Hoare
6e6798c4e1 Bulk-edit mutable -> mut. 2012-03-26 18:35:18 -07:00
Marijn Haverbeke
87e097a853 Disallow ret inside of block functions
Also adds proper checking for cont/break being inside a loop.

Closes #1854
Issue #1619
2012-03-26 12:45:47 +02:00
Niko Matsakis
042c532a08 Implement new inference algorithm. 2012-03-23 21:47:28 -07:00
Brian Anderson
f3fe85dad7 Bump version numbers to 0.2 2012-03-22 15:25:02 -07:00
Graydon Hoare
b224bcf6e1 Add an LLVM-instruction-counting mode to trans.
Pipe to xdu to see a trans call graph of generated insns.
2012-03-22 13:44:20 -07:00
Niko Matsakis
dc07280b08 make --enforce-mut-vars always on, add mut annotations to remaining files 2012-03-22 09:58:19 -07:00
Josh Matthews
8142438938 Avoid mangling names differently in debug builds to work around a build error. Fix up file name and path debug information, and build one compilation unit for a crate instead of one per source file. 2012-03-21 18:56:36 -04:00
Brian Anderson
1695148b5d rustdoc: Refactor reexport_pass 2012-03-20 14:54:40 -07:00
Brian Anderson
651aeea961 rustdoc: Document impl reexports 2012-03-20 14:54:40 -07:00
Brian Anderson
f3ed738399 rustdoc: Run the entire resolve pass 2012-03-20 14:54:40 -07:00
Marijn Haverbeke
7a34ac5890 Revert order of arguments to option::maybe and from_maybe
Closes #2019
2012-03-20 14:55:07 +01:00
Brian Anderson
4c4ac05f02 rustdoc: Print type params in fn sigs. Closes #2021 2012-03-18 21:41:57 -07:00
Brian Anderson
47d468f08c core: Store reexporting result and either. Closes #1997 2012-03-16 15:14:37 -07:00
Brian Anderson
ddbd02aaf2 rustdoc: Allow elipses to appear in brief descriptions. Closes #2003 2012-03-16 14:50:30 -07:00
Brian Anderson
0b0ecc662b rustdoc: Escape backslashes 2012-03-16 12:20:29 -07:00
Marijn Haverbeke
0e5da379dd Turn on monomorphization by default 2012-03-15 08:59:29 +01:00
Brian Anderson
3864d6d845 std: Rename the hashmap constructors to conform to new standards
Instead of using the new_ prefix just name them after their type
2012-03-14 18:19:08 -07:00
Brian Anderson
b968c8e6cd Name types after their modules instead of 't' 2012-03-13 15:14:17 -07:00
Brian Anderson
cd72b1f848 Overhaul constructor naming in libs 2012-03-13 11:07:22 -07:00
Graydon Hoare
6f5853f5a1 Libc/os/run/rand/io reorganization. Close #1373. Close #1638.
- Move io, run and rand to core.
 - Remove incorrect ctypes module (use libc).
 - Remove os-specific modules for os and fs.
 - Split fs between core::path and core::os.
2012-03-12 20:08:29 -07:00
Brian Anderson
8f071bb841 rustdoc: Add indexes to native mods. Closes #1963 2012-03-11 16:36:20 -07:00
Tim Chevalier
eb9d0e89d1 wibble 2012-03-10 20:36:48 -08:00
Brian Anderson
91e5a1c8b3 core: Remove the nearly empty math module
This mod only had two functions, all of whose users have been changed
to use the uint module.
2012-03-10 17:43:19 -08:00
Brian Anderson
a5368fb6d8 rustdoc: Put native mods on their own pages. Closes #1959 2012-03-10 16:44:48 -08:00
Brian Anderson
474ad2e4de rustdoc: Fix native mod breakage 2012-03-10 16:43:38 -08:00
Brian Anderson
4bbe33c8eb rustdoc: Write page titles 2012-03-10 16:21:23 -08:00
Brian Anderson
78d539927a rustdoc: Remove unused fn 2012-03-10 15:42:08 -08:00
Brian Anderson
d54d9b1cab rustdoc: Fix generation of impl links. Closes #1953 2012-03-10 15:38:52 -08:00
Tim Chevalier
a0521971b1 Merge branch 'master' into floop-for-snapshot 2012-03-09 22:16:52 -08:00
Brian Anderson
e2dad03f44 rustdoc: Change the formatting for enum variants 2012-03-09 21:20:51 -08:00
Brian Anderson
f9755c666d rustdoc: Simplify attribute parsing 2012-03-09 18:13:14 -08:00
Brian Anderson
effe4559d2 rustdoc: Accept the first sentence as the brief description 2012-03-09 18:13:14 -08:00
Brian Anderson
4fc5b822e2 rustdoc: Simplify the relation between the brief and long description
Brief is just used for indexes now
2012-03-09 18:13:14 -08:00
Brian Anderson
0905ad2bbe rustdoc: Vastly simplify the document model
Don't attempt to impose any structure for documenting arguments, return
values, etc.
2012-03-09 17:24:56 -08:00
Brian Anderson
9f4c0d71e5 rustdoc: Update the demo module 2012-03-09 17:24:56 -08:00
Brian Anderson
e399263b5e rustdoc: Write sections in markdown 2012-03-09 17:24:56 -08:00
Brian Anderson
0ad8265fee rustdoc: Add the concept of 'sections' 2012-03-09 17:24:55 -08:00
Tim Chevalier
321fd80219 Add an infinite loop construct
Add a loop {} construct for infinite loops, and use it in test
cases. See #1906 for details.
2012-03-09 16:40:58 -08:00
Brian Anderson
256146bba4 rustdoc: Rename desc_pass to text_pass 2012-03-08 17:00:03 -08:00
Tim Chevalier
0c5fdc8745 Rename last to last_opt, last_unsafe to last
As per discussion on IRC. I am about to file an RFC for further
discussion about the more general issue of whether to enforce
invariants through types, typestate, or dynamic checks, but for now,
removing the misleading name "last_unsafe".
2012-03-08 15:25:56 -08:00
Brian Anderson
57596cbe53 rustdoc: Improve formatting of subsection headers 2012-03-08 15:05:13 -08:00
Brian Anderson
7d686d6372 rustdoc: Format return values consistently 2012-03-08 15:05:13 -08:00
Brian Anderson
6ad653bb31 rustdoc: Add some more demo docs 2012-03-08 15:05:13 -08:00
Brian Anderson
ac8b2c8354 rustdoc: Don't bother reporting the type of return values 2012-03-08 15:05:13 -08:00
Brian Anderson
5c28b2c1d1 rustdoc: Don't bother reporting the type of arguments
This is already displayed in the function signature. Simpler this way.
2012-03-08 15:05:13 -08:00
Tim Chevalier
ebc1d3e704 Rename last_total to last_unsafe
See Issue 1943 for any discussion (reopen it if necessary).

Closes #1943
2012-03-08 13:07:31 -08:00
Marijn Haverbeke
fd465f91a8 Drop collect_items pass, create decls on demand
This solves a problem with inlined functions that have inner functions.
2012-03-08 21:17:32 +01:00
Brian Anderson
bdec806848 rustdoc: Look for pandoc in ~/.cabal 2012-03-07 19:22:02 -08:00
Patrick Walton
c9375fed8d stdlib: Stop incurring vtable dispatch costs when hashmaps are used
This required changing almost all users of hashmaps to import the hashmap interface first.

The `size` member in the hashmap structure was renamed to `count` to work around a name conflict.
2012-03-07 17:35:13 -08:00
Patrick Walton
c245d9e980 Revert "stdlib: Stop incurring vtable dispatch costs when hashmaps are used"
This reverts commit f0250a23d3.
2012-03-07 16:56:45 -08:00
Patrick Walton
f0250a23d3 stdlib: Stop incurring vtable dispatch costs when hashmaps are used
This required changing almost all users of hashmaps to import the hashmap interface first.

The `size` member in the hashmap structure was renamed to `count` to work around a name conflict.
2012-03-07 16:51:31 -08:00
Brian Anderson
a9bd76b3c1 rustdoc: Implement more rules for generating internal pandoc links 2012-03-07 15:45:16 -08:00
Brian Anderson
7f66df714a rustdoc: Support #[doc(hidden)] 2012-03-07 14:50:39 -08:00
Brian Anderson
e55d7d6add rustdoc: Remove escaping pass 2012-03-06 20:31:05 -08:00
Brian Anderson
e536e8a933 rustdoc: Don't escape characters between backticks 2012-03-06 20:16:53 -08:00
Brian Anderson
cf8f5b7606 rustdoc: Escape HTML special characters 2012-03-06 17:46:52 -08:00
Brian Anderson
29ac3c811d rustdoc: Put brief descriptions in the indexes 2012-03-06 17:16:25 -08:00
Brian Anderson
a4ff220133 rustdoc: Write links correctly for multi-page docs 2012-03-06 17:16:25 -08:00
Brian Anderson
801b02b25d rustdoc: Parallelize markdown_pass 2012-03-06 17:16:25 -08:00
Brian Anderson
513d956dce rustdoc: Run pandoc in a way that won't deadlock waiting for IO 2012-03-06 17:16:25 -08:00
Brian Anderson
dea19b25c9 rustdoc: Detect when pandoc isn't available 2012-03-06 14:48:47 -08:00
Brian Anderson
b8c8e43381 rustdoc: Add some more error reporting for pandoc 2012-03-06 14:48:47 -08:00
Brian Anderson
fc9b55d65f rustdoc: Write a new file for each page 2012-03-06 14:48:47 -08:00
Brian Anderson
fbd8a76e8a rustdoc: Add a pass to split the document into pages 2012-03-06 14:48:47 -08:00
Brian Anderson
3c0e984449 rustdoc: Remove Google's copyright notice
There is no Google code left.
2012-03-06 11:25:27 -08:00
Niko Matsakis
712dd23541 make inline enabled by default 2012-03-06 09:01:40 -08:00
Marijn Haverbeke
4e4bd585cd Track all exports in exp_map
This is needed because the reachability checker needs to be able to
follow exports.

Issue #1934
2012-03-06 17:11:30 +01:00
Brian Anderson
1d826b735c rustdoc: Build appropriate filenames for pages 2012-03-04 00:23:54 -08:00
Brian Anderson
0e3cee747a rustdoc: Convert markdown writer to a writer_factory 2012-03-03 23:56:38 -08:00
Brian Anderson
0b2ffa854f rustdoc: Simplify the markdown_pass interface a bit 2012-03-03 23:20:40 -08:00
Brian Anderson
2cdb662022 rustdoc: Remove some bogus error handling around process spawning 2012-03-03 22:09:31 -08:00
Brian Anderson
f8742b476f rustdoc: Introduce the concept of a 'page' 2012-03-03 21:56:17 -08:00
Brian Anderson
3d991bac6c rustdoc: Whitespace 2012-03-02 16:27:31 -08:00
Brian Anderson
87b9d67b66 rustdoc: Write indexes in output 2012-03-02 16:20:53 -08:00
Brian Anderson
3d67939c41 rustdoc: Begin constructing indexes 2012-03-02 15:17:27 -08:00
Brian Anderson
78bfdb11c8 Revert "rust: xfail-fast run-pass/cci_no_inline_exe"
This reverts commit 95099cddcf.
2012-03-02 13:46:02 -08:00
Brian Anderson
95099cddcf rust: xfail-fast run-pass/cci_no_inline_exe 2012-03-02 13:44:40 -08:00
Brian Anderson
8478349b8b rustdoc: Remove some debug logging 2012-03-02 02:12:12 -08:00
Brian Anderson
4056082833 rustdoc: Extract markdown header logic. Needed for indexing 2012-03-01 18:13:22 -08:00
Brian Anderson
4991943f4e rustdoc: Stop having pandoc write the TOC
We will generate them ourselves
2012-03-01 17:29:53 -08:00
Brian Anderson
3cd8c57a54 rustdoc: Add index records to the doc tree 2012-03-01 16:34:09 -08:00
Brian Anderson
3cec2d6954 rustdoc: Teach rustdoc to run pandoc 2012-03-01 14:21:25 -08:00
Brian Anderson
9208684e74 rustdoc: Extract markdown_writer from markdown_pass 2012-02-29 23:45:51 -08:00
Brian Anderson
516f87f860 rustdoc: Write markdown to a file instead of stdout 2012-02-29 23:45:51 -08:00
Brian Anderson
ad82a031f2 rustdoc: Use unique types for writing markdown output
No shared types allowed.
2012-02-29 23:45:51 -08:00
Brian Anderson
2ac6dbc9ba rustdoc: Refactor markdown_pass 2012-02-29 23:45:51 -08:00
Niko Matsakis
2dd5b3ace6 optionally enforce local variable mutability 2012-02-29 19:31:15 -08:00
Brian Anderson
58e2083c0a rustdoc: Parse command line opts 2012-02-28 21:36:44 -08:00
Brian Anderson
6c9527ab79 rustdoc: Add -h flag 2012-02-28 21:36:44 -08:00
Niko Matsakis
bceea8339a change def's that are always local to use node_id, add --inline opt 2012-02-28 06:31:28 -08:00
Brian Anderson
9e4962a26e rustdoc: Fix bustage 2012-02-27 18:29:37 -08:00
Brian Anderson
01a1c98d09 rustdoc: Clean up pass names 2012-02-27 18:11:12 -08:00
Brian Anderson
98c31aaaff rustdoc: Time passes 2012-02-27 18:07:16 -08:00
Brian Anderson
8fdb213eb2 rustdoc: Optimize some closures to avoid copying 2012-02-26 23:49:37 -08:00
Brian Anderson
3bfa457039 rustdoc: Rename util mod to par 2012-02-26 23:10:12 -08:00
Brian Anderson
c15127fe3e rustdoc: Do all maps as util::anymap 2012-02-26 23:07:03 -08:00
Brian Anderson
a11638f0d9 rustdoc: Remove some unused exports 2012-02-26 22:58:53 -08:00
Brian Anderson
0f054dfaee rustdoc: Add parallel folds for native mods 2012-02-26 22:58:24 -08:00
Brian Anderson
ac34cf96ad rustdoc: Use default_any_fold in some tests 2012-02-26 22:55:05 -08:00
Brian Anderson
59d6ec8bd9 rustdoc: Refactor some of the map code 2012-02-26 22:43:08 -08:00
Brian Anderson
4675f86084 rustdoc: Do less copying in util::parmap 2012-02-26 22:08:52 -08:00
Brian Anderson
222cfbec64 rustdoc: Add command line option parsing and a config record 2012-02-26 18:15:10 -08:00
Brian Anderson
16d290d10c rustdoc: Reexport native functions 2012-02-24 15:59:34 -08:00
Brian Anderson
396540f19d rustdoc: Don't prune reexports 2012-02-24 15:43:57 -08:00
Brian Anderson
9b009ea23d rustdoc: Fix some remaining bugs around native mods 2012-02-24 15:22:57 -08:00
Brian Anderson
6e31983179 rustdoc: Sort native mods 2012-02-24 15:15:27 -08:00
Brian Anderson
5a86313387 rustdoc: Write markdown for native mods and fns 2012-02-24 15:07:08 -08:00
Brian Anderson
16010058a6 rustdoc: Add types for native functions 2012-02-24 15:06:58 -08:00
Brian Anderson
2576a3c2c9 rustdoc: Extract attribute docs from native stuffs 2012-02-24 14:22:13 -08:00
Brian Anderson
f053f06973 rustdoc: Record paths to native functions 2012-02-24 14:08:47 -08:00
Brian Anderson
681e5beac4 rustdoc: Remove a pointer that's no longer needed 2012-02-24 13:53:28 -08:00
Brian Anderson
fdea1c414c rustdoc: Extract doc nodes for native mods 2012-02-24 13:50:40 -08:00
Brian Anderson
ba173d8409 rustdoc: Add doc node for native mods 2012-02-24 13:34:35 -08:00
Brian Anderson
9982a2a841 rustc: Don't add duplicate entries to exp_map 2012-02-23 21:52:41 -08:00
Brian Anderson
710258cc76 rustdoc: Make reexports work in the crate module 2012-02-23 18:06:43 -08:00
Marijn Haverbeke
780f8277f4 Finish cleanup of core::str
Closes #1849
2012-02-23 17:00:19 +01:00
Kevin Cantu
7782f5d692 (core::str) remove len_bytes alias 2012-02-23 17:00:19 +01:00
Kevin Cantu
1b957c0942 (core::str) replace uses of unsafe::slice_bytes; replace find[_from]_bytes with find[_from] 2012-02-23 17:00:19 +01:00
Kevin Cantu
454b53a7c2 (core::char) rename slice -> slice_chars 2012-02-23 17:00:19 +01:00
Kevin Cantu
98447f5236 (core::str) mostly rename len -> len_chars 2012-02-23 17:00:19 +01:00
Brian Anderson
40cd1a7c45 rustdoc: Turn off parallel folding until I figure out what's wrong on OS X 2012-02-21 16:15:14 -08:00
Brian Anderson
8b071ebe4c rustdoc: Make it easy to switch between parallel and sequential folds 2012-02-21 16:14:02 -08:00
Brian Anderson
1ee139ae1f rustdoc: Convert most passes to parallel folds 2012-02-21 16:14:02 -08:00
Brian Anderson
d4f57620ae rustdoc: Implement a parallel fold 2012-02-21 16:14:02 -08:00
Brian Anderson
7599d2dd51 rustdoc: Implement astsrv in a dedicated task
This allows the srv type to be sendable so we can parallelize
all the rustdoc passes
2012-02-21 16:14:02 -08:00
Brian Anderson
96e3031675 rustdoc: Convert the astsrv constructor to a higher order fn
This will allow it to manage the destruction of the astsrv after
I convert it to a task
2012-02-21 16:14:02 -08:00
Brian Anderson
d6095dc6b5 rustdoc: Rename mk_srv_from_str/file to just from_str/file 2012-02-21 16:14:02 -08:00
Brian Anderson
5837e1e809 rustdoc: Remove stray log 2012-02-20 16:57:29 -08:00
Brian Anderson
86e1d4ecbd rustdoc: astsrv::exec should return sendable types
In order to make it parallelizable someday.
2012-02-20 16:56:59 -08:00