Commit Graph

1020 Commits

Author SHA1 Message Date
Luqman Aden
0e2437bf5d uv: implement a way to get client's ip/port. 2012-10-20 17:17:10 -07:00
Tim Chevalier
10612ee30c Remove superfluous by-ref in option::get, option::get_default, option::expect
Superficial change, no review.
2012-10-19 11:38:28 -07:00
Erick Tryzelaar
fe41ccec64 Rename str::to_unique to str::to_owned. 2012-10-18 11:04:59 -07:00
Tim Chevalier
33adb7a824 Merge pull request #3739 from killerswan/usagemsg
Add a module to getopts for verbose option group declaration (and use it in rustc)
2012-10-17 13:05:04 -07:00
Tim Chevalier
bbc90b6bf6 Fix whitespace 2012-10-17 12:59:30 -07:00
Daniel Patterson
fd6be2fa4e std::treemap - changing types to reflect constraints, adding equality check (space expensive) 2012-10-17 12:59:30 -07:00
Kevin Cantu
32baf1c54c Add a module to getopts to support verbose option definition
This is built on top of the existing functionality, but
adds a `groups` module which defines functions allowing
the user to specify whole short/long/description groups
at once and provides a usage message.
2012-10-17 12:10:06 -07:00
Tim Chevalier
47c83f1844 Export std::net_url::encode_component 2012-10-17 10:39:01 -07:00
Erick Tryzelaar
ab89b5c294 libstd: make Serializer a trait-level typaram 2012-10-15 08:25:23 -07:00
Tim Chevalier
90d06b80fd Make moves explicit in std tests 2012-10-12 20:43:37 -07:00
Graydon Hoare
57b4d10ff6 bump version to 0.5. 2012-10-12 16:41:32 -07:00
Kevin Cantu
1bede1f5e0 Replace several common macros of the form #m[...] with m!(...)
This commit replaces nearly all remaining uses of #fmt, #debug, #error,
and #info, and fixes some error messages...
2012-10-12 14:14:48 -07:00
Tim Chevalier
66cea3700e Fix from_buf in test cases 2012-10-11 16:45:57 -07:00
Tim Chevalier
6854265161 Remove comment that is now false 2012-10-11 16:00:30 -07:00
Tim Chevalier
d2efd7edf7 Update FIXME number 2012-10-11 16:00:30 -07:00
Tim Chevalier
d882274284 Remove Copy bound from std::timer::delayed_send
Closes #3717
2012-10-11 14:17:59 -07:00
Tim Chevalier
5a8ba073bc Make to_str pure and fix const parameters for str-mutating functions
Two separate changes that got intertwined (sorry):

Make to_str pure. Closes #3691

In str, change functions like push_char to take an &mut str instead of
an &str. Closes #3710
2012-10-11 14:17:59 -07:00
Erick Tryzelaar
e325d029d4 Remove old serialization2 vestigial code 2012-10-09 18:03:07 -07:00
Erick Tryzelaar
eb626e7119 Remove the old serializers (needs snapshot) 2012-10-07 17:20:19 -07:00
Simon BD
0e3bec0ced Merge remote-tracking branch 'original/incoming' into incoming 2012-10-06 13:15:18 -05:00
Simon BD
d4a54837d4 Add a test to check that badly written Ord impl do not cause double frees 2012-10-06 13:07:29 -05:00
Simon BD
eee86d4340 Remove debug info 2012-10-06 12:44:56 -05:00
Tim Chevalier
05999290e2 Finally removing all uses of by-mut-ref
The code for the mode itself is still there.
2012-10-05 21:03:40 -07:00
Tim Chevalier
45345bda6a Remove uses of mutable ref mode.
It's still in the compiler right now, but warned about
2012-10-05 16:57:37 -07:00
Tim Chevalier
f8bc0d2545 Revert "wip"
This reverts commit ca49fd402a.
2012-10-05 16:10:08 -07:00
Tim Chevalier
ca49fd402a wip 2012-10-05 15:39:12 -07:00
Tim Chevalier
e16dbb7888 Demode some code using by-mutbl-ref; warn about by-mutbl-ref
The parser now warns about use of mutbl-ref mode, though it's kind
of a lie since this commit doesn't remove support for the mode.

Changed move_val_init to have stage0 and stage1/2 versions, the latter of
which is demoded.

Changed the type that the typechecker expects the move_val_init
intrinsic to have. After this is pushed, I can make a new snapshot,
which will remove the need for the stage0 versions.
2012-10-05 15:37:01 -07:00
Brian Anderson
016875b1b1 std: Silence remaining warnings 2012-10-05 11:59:51 -07:00
Brian Anderson
e46e97fc9a Silence most of the remaining warnings 2012-10-05 11:53:24 -07:00
Brian Anderson
ba75a3e14c std: Revert demoding of uv_ll. It can't be done without FFI changes 2012-10-05 11:32:00 -07:00
Tim Chevalier
8fc60af441 Remove by-copy mode from std, mostly
One instance remains in net_tcp due to a foreign fn. Lots of
instances remain in serialization.rs, but IIRC that is being removed.

I had to do unholy things to task-perf-word-count-generic to get it
to compile after demoding pipes. I may well have messed up its
performance, but it passes.
2012-10-04 19:59:47 -07:00
Simon BD
74246d47fd Finish up tests, uncomment when ICE is fixed. 2012-10-04 21:35:03 -05:00
Tim Chevalier
202c8fd0eb Kill bootstrapping code in ptr 2012-10-04 16:48:57 -07:00
Tim Chevalier
fe12da0864 De-mode comm::Chan 2012-10-04 16:48:57 -07:00
Graydon Hoare
f05bf26f85 Fix long line. 2012-10-04 14:08:59 -07:00
Graydon Hoare
a06b90322c Finish de-exporting std. Part of #3583. 2012-10-04 13:47:24 -07:00
Simon BD
7bd48b92d9 Get tim_sort working, add test for double-freeing elements in tmp 2012-10-04 11:24:55 -05:00
Simon BD
455591d026 Fix my merge 2012-10-04 11:24:38 -05:00
Simon BD
efcd2385ea Merge remote-tracking branch 'original/incoming' into incoming
Conflicts:
	src/libstd/json.rs
	src/libstd/sort.rs
2012-10-03 21:47:09 -05:00
Simon BD
44f8a4401a Backup changes before pull from incoming 2012-10-03 21:41:53 -05:00
Patrick Walton
1c3bfa4550 libstd: Make vec_from_set pure 2012-10-03 19:40:25 -07:00
Brian Anderson
3ccf6f5932 std: Fix double free in uv 2012-10-03 19:23:34 -07:00
Graydon Hoare
35598b4595 De-export net::*. Part of #3583. 2012-10-03 17:01:32 -07:00
Tim Chevalier
c73e3320f8 Remove crud 2012-10-03 14:28:47 -07:00
Tim Chevalier
f33539e446 Remove uses of + mode from libstd
More or less the same as my analogous commit for libcore. Had
to remove the forbid(deprecated_modes) pragma from some files -- will
restore it after the snapshot.
2012-10-03 14:05:51 -07:00
Graydon Hoare
654b4d6987 De-export std::{json, getopts}. Part of #3583. 2012-10-03 13:38:00 -07:00
Graydon Hoare
fb83b40174 De-export std::{ebml, ebml2}. Part of #3583. 2012-10-03 13:36:39 -07:00
Simon BD
0ec5c9af9b Add cleanup code so the the array remains in a valid state if a comparison fails 2012-10-03 09:51:05 -05:00
Tim Chevalier
f78cdcb636 Removing explicit uses of + mode
This removes most explicit uses of the + argument mode. Pending a
snapshot, I had to remove the forbid(deprecated_modes) pragma from
a bunch of files. I'll put it back!

+ mode still has to be used in a few places for functions that get
moved (see task.rs)

The changes outside core and std are due to the to_bytes trait and
making the compiler (with legacy modes on) agree with the libraries
(with legacy modes off) about modes.
2012-10-02 14:31:39 -07:00
Patrick Walton
9284179311 libstd: Switch off legacy modes in both core and std. 2012-10-02 12:20:06 -07:00
Graydon Hoare
201513e859 De-export std::{fun_treemap, list, map}. Part of #3583. 2012-10-02 12:04:49 -07:00
Erick Tryzelaar
81423a3866 Add deserializable and more types to serialization2 2012-10-01 20:43:59 -07:00
Erick Tryzelaar
0159fe7ce9 libstd: remove unused imports from json 2012-10-01 20:43:59 -07:00
Graydon Hoare
fa010a6ee4 De-export std::{uv, uv_ll, uv_iotask, uv_global_loop}. Part of #3583. 2012-10-01 18:21:41 -07:00
Graydon Hoare
13979eb7e2 De-export std::test. Part of #3583. 2012-10-01 18:00:14 -07:00
Graydon Hoare
a4a7df0ccc Fix rope breakage from de-exporting. 2012-10-01 15:26:53 -07:00
Tim Chevalier
b18320446e Move over to calling ptr::addr_of
Everything should now call ptr::addr_of instead of
ptr::p2::addr_of. Only the pipes macro code when compiled
by stage0 will call ptr::p2::addr_of. Needs a snapshot to get
rid of that.
2012-10-01 15:12:09 -07:00
Graydon Hoare
8cc61c816a De-export std::{rope,smallintmap}. Part of #3583. 2012-10-01 14:09:09 -07:00
Tim Chevalier
9ff95e29b3 Demode ebml, ebml2, json, par 2012-10-01 12:36:41 -07:00
Simon BD
579c7e3ef1 Make local variables and methods use underscores not camel case 2012-10-01 11:34:04 -05:00
Brian Anderson
d0333a8e41 std: Make the DuplexStream constructor public 2012-09-28 22:19:43 -06:00
Graydon Hoare
9e6d3cf3c9 De-export std::c_vec. Part of Part of #3583. 2012-09-28 17:47:36 -07:00
Graydon Hoare
eba5eeaef8 De-export std::deque. Part of #3583. 2012-09-28 17:21:35 -07:00
Graydon Hoare
e17d998e95 De-export std::{time, prettyprint{,2}, arena}. Part of #3583. 2012-09-28 16:26:33 -07:00
Graydon Hoare
1948ddf583 De-mode std::unicode. Part of #3583. 2012-09-28 16:26:18 -07:00
Brian Anderson
74a46ea74c std: More demoding 2012-09-28 16:19:38 -07:00
Graydon Hoare
43a9d90b48 De-export std::{arc,comm,sync}. Part of #3583. 2012-09-28 16:05:45 -07:00
Graydon Hoare
70ae3e7bf2 De-export std::{bitv, cell, timer}. Part of #3583. 2012-09-28 14:55:43 -07:00
Tim Chevalier
2f4ee89119 Demode extfmt
Needs a snapshot before this can be completed, because I changed
the mode for conv_poly.
2012-09-28 13:47:45 -07:00
Niko Matsakis
21519bc7e0 demode vec 2012-09-28 13:27:45 -07:00
Graydon Hoare
7e8c363da8 Fix missed pattern on std::net_tcp. 2012-09-28 12:30:33 -07:00
Graydon Hoare
3efe499734 Long lines. 2012-09-28 11:36:09 -07:00
Brian Anderson
a09a49627e Long lines 2012-09-28 02:26:20 -07:00
Brian Anderson
bc9efaad9c std: Eliminate deprecated patterns 2012-09-28 00:22:28 -07:00
Simon BD
4d30d7ff04 Add a simple testsuite for timsort 2012-09-27 21:01:43 -05:00
Simon BD
f7be2d92a4 Export timsort 2012-09-27 20:56:13 -05:00
Simon BD
f34c4f4b04 Remove trailing whitespace 2012-09-27 20:44:14 -05:00
Graydon Hoare
fe62ff465c De-mode std::{treemap,sort}. Part of #3583. 2012-09-27 18:21:32 -07:00
Graydon Hoare
86041c421d De-export std::{dbg,sha1,md4,tempfile,term}. Part of #3583. 2012-09-27 18:03:13 -07:00
Simon BD
868d10160f Put function argument last in sort function. Fixes #3265. 2012-09-27 19:05:13 -05:00
Brian Anderson
5b93d1a29f std: Fix mode warning in std::test 2012-09-27 16:50:42 -07:00
Graydon Hoare
1845cf23aa De-export std::{base64,cmp,par}. Part of #3583. 2012-09-27 16:43:25 -07:00
Simon BD
f98f00f7f6 Fix timsort to use updated vec::reserve 2012-09-27 18:15:57 -05:00
Brian Anderson
0ec267b276 std: Demode more of list and treemap 2012-09-26 19:12:32 -07:00
Niko Matsakis
67a8e7128a Demode vec::push (and convert to method) 2012-09-26 18:02:07 -07:00
Erick Tryzelaar
49d00b2f22 libstd: port json over to serialization2 2012-09-26 16:29:41 -07:00
Erick Tryzelaar
a1ab7d3cba libstd: Add serialization2 versions of prettyprint and ebml 2012-09-26 16:20:25 -07:00
Erick Tryzelaar
c0b9986c8f libstd: change serialization2 to take &self argument methods
Unfortunately this trips over issue (#3585), where auto-ref isn't
playing nicely with @T implementations. Most serializers don't
care, but prettyprint2 won't properly display "@" until #3585 is
fixed.
2012-09-26 16:20:24 -07:00
Erick Tryzelaar
780b23af73 libstd: add the new trait-based serialization
This will need a snapshot before we can convert ebml and rustc
to use the new-style serialization.
2012-09-26 16:20:24 -07:00
Brian Anderson
4f15b0d975 std: Fix mode warnings in fun_treemap and list 2012-09-26 15:59:52 -07:00
Eric Holk
135ebca8aa Refactoring ReaderUtil trait, combining it with the traitless impl on Reader. 2012-09-26 15:55:42 -07:00
Patrick Walton
264e1b2edb libcore: De-mode at_vec 2012-09-26 12:29:27 -07:00
Tim Chevalier
e19e628b19 Demode iter-trait 2012-09-25 22:13:05 -07:00
Tim Chevalier
473a866733 Fix long lines 2012-09-25 22:13:05 -07:00
Tim Chevalier
3023bd8729 Demode dvec 2012-09-25 18:27:55 -07:00
Brian Anderson
d05e2ad66c Demode core::result 2012-09-25 17:48:22 -07:00
Brian Anderson
62649f0412 Check more things with deprecated_modes 2012-09-25 17:41:29 -07:00
Simon BD
cef7763649 Add timsort to std/sort 2012-09-25 17:53:24 -05:00
Brian Anderson
afd91f8a56 Register snapshots. Remove redundant Eq impls, Makefile hacks 2012-09-23 23:01:49 -07:00
Brian Anderson
4a78f9b166 core: Demode option 2012-09-23 17:15:00 -07:00
Niko Matsakis
ba3eebd41d Make it illegal to use modes in a fn signature with providing
an explicit variable name. (Step one to changing the defaults)

First step to #3535
2012-09-23 13:30:13 -05:00
Niko Matsakis
3d59ac3a19 De-mode vec::map, vec::eachi, vec::rev_each, vec::rev_eachi 2012-09-21 19:13:55 -07:00
Patrick Walton
d48396c986 libcore: De-mode str 2012-09-21 18:37:06 -07:00
Graydon Hoare
dffe188991 Install new pub/priv/export rules as defaults, old rules accessible under #[legacy_exports]; 2012-09-21 18:11:43 -07:00
Patrick Walton
9117dcb968 rustc: De-mode all overloaded operators 2012-09-20 09:48:05 -07:00
Brian Anderson
74dbdecb59 Remove old stage0 compat gunk 2012-09-19 19:25:29 -07:00
Brian Anderson
80524d3ad3 std: Demode test 2012-09-19 19:12:35 -07:00
Brian Anderson
c946f65d41 std: Mostly demode net::tcp 2012-09-19 19:12:35 -07:00
Brian Anderson
2792071bd2 std: Demode uv::global_loop 2012-09-19 19:12:35 -07:00
Brian Anderson
677792c6b1 std: Demode uv::iotask 2012-09-19 19:12:35 -07:00
Brian Anderson
c3f15c0982 std: Partially demode uv::ll 2012-09-19 19:12:34 -07:00
Brian Anderson
1643794e01 std: Demode bitv 2012-09-19 19:08:08 -07:00
Brian Anderson
9173508aa4 std: Demode arena 2012-09-19 18:14:30 -07:00
Niko Matsakis
ebd3203eaf repair broken map test; it seems that the original test relied on hokey
hash fns in order to setup conflicts.  I just removed those asserts,
so the test is not as good as it once was.
2012-09-19 17:47:13 -07:00
Niko Matsakis
cfed923600 demode the each() method on vec and other iterables. 2012-09-19 17:03:01 -07:00
Brian Anderson
1c39f1968c std: Clean up crate description 2012-09-19 16:52:59 -07:00
Graydon Hoare
5e41739562 Remove final bits of residual hokey-hash functions. Close #1616. 2012-09-19 16:35:53 -07:00
Graydon Hoare
1ffd90edbc Remove redundant hashmap constructor functions. 2012-09-19 15:51:44 -07:00
Philipp Brüschweiler
d3e0a06578 V2: now with more locks! 2012-09-19 14:01:53 -07:00
Philipp Brüschweiler
68e755b1c2 core: Allocate threads on demand, not on scheduler startup
API change: rust_kernel::create_scheduler() or
rust_scheduler::rust_scheduler() respecitevly now take ownership of the
launch factory argument, it is needed to create new threads on demand.

Also renames rustrt::sched_threads() to rustrt::rust_sched_threads() for
consistency. Added rustrt::rust_max_sched_threads() to return the
maximal number of scheduled threads of the current scheduler.

Fixes #3493.
2012-09-19 14:01:53 -07:00
Niko Matsakis
9cf271fe96 De-mode vec::each() and many of the str iteration routines
Note that the method foo.each() is not de-moded, nor the other
vec routines.
2012-09-19 10:52:59 -07:00
Niko Matsakis
8d4928f780 Revert "replace explicit calls to vec::each with vec::each_ref, partially demode str"
This reverts commit 1be24f0758.

Not quite ready.
2012-09-18 21:41:13 -07:00
Niko Matsakis
1be24f0758 replace explicit calls to vec::each with vec::each_ref, partially demode str 2012-09-18 21:31:00 -07:00
Brian Anderson
2906f2de31 core: Rename 'unsafe' mod to 'cast' 2012-09-18 19:36:25 -07:00
Patrick Walton
e653d493fb rustc: Remove legacy mode inference, unless #[legacy_modes] is used 2012-09-18 15:53:04 -07:00
Brian Anderson
d53cfd225a core: Move Exclusive and SharedMutableState to the private mod 2012-09-18 15:23:57 -07:00
Erick Tryzelaar
d0d68c6036 libcore: make a copyless io::BytesWriter 2012-09-18 12:56:57 -07:00
Brian Anderson
2cdb23bbc0 Replace uses of 'unchecked' with 'unsafe' 2012-09-18 11:31:57 -07:00
Brian Anderson
5c18bf6cdd core: Rename at_vec::unsafe to raw 2012-09-18 11:19:17 -07:00
Erick Tryzelaar
10e317de54 vec::u8 => vec::bytes (#3444) 2012-09-15 13:38:41 -07:00
Erick Tryzelaar
b73f801cc1 int/uint parse_buf => parse_bytes (#3444) 2012-09-15 13:38:41 -07:00
Graydon Hoare
c5347b4bf9 Fix implicit-instantiation of non-implicitly-copyable warnings. 2012-09-13 19:53:30 -07:00
Niko Matsakis
2f6b66ecd3 s/vec::as_buf/vec::as_imm_buf/, fix comment, remove set.rs
hat tip to @jruderman
2012-09-13 13:24:33 -07:00
Kevin Cantu
c43426e35b CamelCase and demode json.rs and deque.rs 2012-09-13 12:05:03 -07:00
Brian Anderson
308ca06012 Rename str::unsafe to str::raw 2012-09-12 19:55:16 -07:00
Brian Anderson
ff54ac8e59 Rename vec::unsafe to vec::raw 2012-09-12 17:45:36 -07:00
Brian Anderson
7568dd4564 Promote 'const', 'copy', 'fn' to strict keywords 2012-09-12 16:00:22 -07:00
Niko Matsakis
5d540de769 fixup mutability of vec::each, make iter_bytes pure
also, change DVec() to work with imm vectors rather than mut ones
2012-09-12 13:29:31 -07:00
Niko Matsakis
8a8f200d10 Introduce auto adjustment table to subsume autoderef/autoref/borrowings.
Fixes #3261
Fixes #3443
2012-09-11 21:25:01 -07:00
Tim Chevalier
c087886e93 Make moves explicit in arguments 2012-09-11 20:02:34 -07:00
Brian Anderson
ea01ee2e9e Convert 'use' to 'extern mod'. Remove old 'use' syntax 2012-09-11 19:25:43 -07:00
Brian Anderson
fb851242b7 Promote 'pub' and 'priv' from restricted to strict keywords 2012-09-11 18:17:26 -07:00
Brian Anderson
cd8ec6d923 Fix ebml tests 2012-09-10 19:36:11 -07:00
Brian Anderson
298eb8c726 Convert 'import' to 'use'. Remove 'import' keyword. 2012-09-10 19:04:26 -07:00
Brian Anderson
1a8a0a77b1 Camel case std::serialization 2012-09-10 19:02:57 -07:00
Tim Chevalier
9869d071d1 Make remaining moves explicit in libstd 2012-09-10 17:51:24 -07:00
Brian Anderson
cb7a5395dd Convert std::map to camel case 2012-09-10 17:08:36 -07:00
Niko Matsakis
29003c799f Rename the poorly named Managed<T> type to Mut<T>.
The Mut<T> type is intended to allow freezable data stuctures to be stored in
`@mut` boxes. Currently this causes borrowck to be very conserivative since it
cannot prove that you are not modifying such a structure while iterating over
it, for example.  But if you do `@Mut<T>` instead of `@mut T`, you will
effectively convert borrowck's static checks into dynamic ones.  This lets
you use the e.g. send_map just like a Java Map or something else.
2012-09-10 16:50:07 -07:00
Brian Anderson
93d3b8aa6b Convert class methods to impl methods. Stop parsing class methods 2012-09-10 16:13:08 -07:00
Brian J. Burg
10a7865428 Provide naive implementations of cmp::Eq and to_bytes::IterBytes for net::url::Url 2012-09-10 14:20:39 -07:00