Commit Graph

685 Commits

Author SHA1 Message Date
Ben Blum
fa8fc4b2b5 Add 1shot pipe chan_one/port_one type aliases and convert std::sync to use them 2012-08-15 13:22:50 -04:00
Brian Anderson
11258310e2 Convert more core types to camel case 2012-08-14 18:26:03 -07:00
Graydon Hoare
c1fad07758 Add a map::str_slice_map constructor to libstd. 2012-08-14 16:45:51 -07:00
Ben Blum
958df4b003 De-mode comm, libc, priv, rt, sync, arc. Super easy. 2012-08-14 19:36:04 -04:00
Ben Blum
821fa337ff add sync::tests::test_mutex_killed_broadcast 2012-08-14 19:32:52 -04:00
Ben Blum
589ee65fd4 Add rw_arc.downgrade() + std and cfail tests. Tons of region FIXMEs... (cf #2282, #3154) 2012-08-14 17:53:18 -04:00
Graydon Hoare
36883186ab De-mode core::future. 2012-08-13 19:08:02 -07:00
Brian Anderson
5394e34aa4 core: Camel case some lesser-used modules 2012-08-13 18:59:48 -07:00
Brian Anderson
6b43c0c1ad Stop parsing old operator overloading syntax 2012-08-13 18:59:17 -07:00
Graydon Hoare
91612dbb7e De-mode-ify a few minor libcore modules. 2012-08-13 17:11:33 -07:00
Ben Blum
52255f898c Enable condvars on ARCs 2012-08-13 19:45:48 -04:00
Patrick Walton
5bd4110170 rustc: Mostly implement region-bounded stack closures 2012-08-13 15:34:36 -07:00
Ben Blum
6e93d67dba Add more rwlock tests 2012-08-13 17:31:28 -04:00
Ben Blum
7cf21e52eb Implement rwlock.downgrade and tests 2012-08-13 17:31:24 -04:00
Ben Blum
3dbce4ebea minor fix to rwlock.read() 2012-08-13 17:18:23 -04:00
Brian Anderson
ac4132b7fd std: Add tests for cell. Fix a logic error 2012-08-12 16:36:07 -07:00
Brian Anderson
78d19d8f1b std: Add cell to the std crate and make it build 2012-08-12 16:26:45 -07:00
Chris Peterson
06b2804c27 std: Update timespec comments to say "nanoseconds" 2012-08-11 13:02:08 -07:00
Ben Blum
0eae571389 Implement mutex_arc and rw_arc; add some tests 2012-08-10 20:53:09 -04:00
Ben Blum
42825fbea6 Split libcore/arc.rs: arc -> std::arc; exclusive -> unsafe::exclusive 2012-08-10 20:53:09 -04:00
Patrick Walton
b9b0d374d3 libstd: Implement cells as a nicer replacement for the option dance 2012-08-09 19:45:05 -07:00
Graydon Hoare
800de26372 Remove obsolete FIXMEs, close #2345. 2012-08-08 18:40:30 -07:00
Brian Anderson
6a0720b439 Convert impls to new syntax 2012-08-08 18:19:24 -07:00
Brian Anderson
2772b2e5c7 syntax: Make match arm parsing more restrictive again
Require comma separators for all expression types except the plain block
2012-08-07 12:23:43 -07:00
Ben Blum
18ac4a8e6d Change task().future_result's argument mode 2012-08-07 14:26:41 -04:00
Brian Anderson
ecaf9e39c9 Convert alt to match. Stop parsing alt 2012-08-06 15:36:30 -07:00
Brian Anderson
d3a9bb1bd4 std: URL paths can contain dashes 2012-08-06 15:17:08 -07:00
Brian Anderson
1e3143b34e std: Parse underscores in url paths 2012-08-06 13:12:49 -07:00
Brian Anderson
025d86624d Switch alts to use arrows 2012-08-05 22:08:09 -07:00
Brian Anderson
3fe1c7071d std: Some fixes to url parsing 2012-08-05 16:33:28 -07:00
Brian Anderson
dbf58716df std: URLs without schemes parse as errors. Closes #3112 2012-08-05 13:48:29 -07:00
Brian Anderson
903068c132 Long lines 2012-08-03 11:46:31 -07:00
Daniel Patterson
7e43f8f8dc std::net::url - change alt to match, ret to return, as per recent syntax changes 2012-08-03 11:28:19 -07:00
Daniel Patterson
64eb497d34 std::net::url - eliminate out of date comment and switch to str::each_chari instead of str_reader to make code cleaner 2012-08-03 11:28:19 -07:00
Daniel Patterson
8e3105b6db std::net::url - fix to_str to work with authorityless urls, add test 2012-08-03 11:28:19 -07:00
Daniel Patterson
21187206c3 std::net::url cleanups for lint check 2012-08-03 11:28:19 -07:00
Daniel Patterson
b57f6b73ba std::net::url - making parsing of authority give error messages if in encounters invalid stuff; support for ipv6, more tests. 2012-08-03 11:28:19 -07:00
Daniel Patterson
d60dd6be87 std::net::url making scheme parsing compliant with rfc, give appropriate error messages, better split fn 2012-08-03 11:28:19 -07:00
Daniel Patterson
e349201bc2 std::net::url - comment cleanup, new test 2012-08-03 11:28:18 -07:00
Daniel Patterson
ef46314d1e std: integrating erickt's url encoding/decoding from github.com/erickt/rust-uri into std::net::url 2012-08-03 11:28:18 -07:00
Patrick Walton
dfe1f6260e rustc: Remove all fixed-length strings from our codebase 2012-08-03 11:22:35 -07:00
Tim Chevalier
948172b93f Make comparisons between region pointers work
Region pointers were considered a scalar type, so compare_scalar_type would
get called to compare region pointers in trans. This would fail, since
compare_scalar_type has no case for region pointers.

Changed type_is_scalar to return false for region pointers. This had the side
effect of breaking casts to types of the form &T. To ameliorate that, I added
library functions ptr::assimilate (taking a &T to a *T) and ptr::to_uint
(taking a &T to a uint), both of which use reinterpret_cast.

While I was at it, I removed ty::type_has_resources, which is dead code.
2012-08-02 23:53:45 -07:00
Niko Matsakis
31c5cec55b Purge placement new; Make borrowck know about unary move.
cc #3071
2012-08-02 22:36:36 -07:00
Niko Matsakis
97452c0ca1 Remove modes from map API and replace with regions.
API is (for now) mostly by value, there are options to use it by
reference if you like.  Hash and equality functions must be pure
and by reference (forward looking to the day when something
like send_map becomes the standard map).
2012-08-02 15:53:28 -07:00
Ben Blum
63b70b2370 Remove std::util 2012-08-02 14:31:58 -04:00
Brian Anderson
b355936b4d Convert ret to return 2012-08-01 19:16:06 -07:00
Graydon Hoare
7f60c56c3e Clean out transitional lint. 2012-08-01 13:35:40 -07:00
Brian Anderson
7b2026bf21 Introduce 'return', 'match' and 'module' as synonyms 2012-07-31 17:22:30 -07:00
Brian Anderson
f35abae892 std: getopts::match -> matches 2012-07-31 13:19:00 -07:00
Lindsey Kuper
439afaa329 Change remaining "iface" occurrences to "trait"; deprecate "iface" 2012-07-31 11:52:16 -07:00
Paul Stansifer
a9cc5066ee Change syntax extension syntax: #m[...] -> m!{...}. 2012-07-30 18:38:15 -07:00
Ben Blum
52ed570f1c Move send_map to libcore 2012-07-30 13:56:14 -04:00
Tim Chevalier
082d8314da Rewrite bitv to use classes and optimize its representation
Rewrote bitv as a class that uses a 32-bit int as its representation
for bit vectors of 32 bits or less, and a vector (the old representation)
otherwise. I didn't benchmark very much, but a bit of informal benchmarking
suggested this is a win.

Closes #2341
2012-07-29 18:39:15 -07:00
Brian Anderson
725a73c4d5 std: Implement to_str for net::url::url 2012-07-28 16:05:06 -07:00
Patrick Walton
afe7757525 libstd: Fix missing export from URL module 2012-07-27 22:23:36 -07:00
Patrick Walton
93c2f5e0e4 rustc: Use coherence for operator overloading.
The only use of the old-style impls is now placement new.
2012-07-27 19:35:24 -07:00
Niko Matsakis
e4ab0f665b change send_map tests to use ~linear_map, much more natural 2012-07-27 15:49:03 -07:00
Niko Matsakis
dd106ba763 export send_map and use fewer impl names 2012-07-27 15:49:03 -07:00
Patrick Walton
01e2471cb7 core: Trait-ify various overloaded operators 2012-07-27 14:52:46 -07:00
Brian Anderson
8fdf77a20d std: Make url a sendable type 2012-07-27 12:34:55 -07:00
Niko Matsakis
8800413f52 wip: add a sendable hashmap to stdlib
caveats:
- not efficient nor heavily tested
- API subject to change and currently incompatible with map
2012-07-27 08:50:50 -07:00
Brian Anderson
97d59a8ade std: Create correctly-sized buffers on TCP read 2012-07-26 18:40:57 -07:00
Eric Holk
6d142c5e25 Removed the rest of the vec::view calls that were marked with #2880. Fixes #2880. 2012-07-26 17:10:48 -07:00
Eric Holk
65beca4e01 Use iteration protocol for ebml, use vec::view in more places (issue #2880) 2012-07-26 17:10:48 -07:00
Graydon Hoare
dbbaa50290 Nomenclature fixes in the lint checker. Fewer double-negatives.
New style is allow(foo), warn(foo), deny(foo) and forbid(foo),
mirrored by -A foo, -W foo, -D foo and -F foo on command line.

These replace -W no-foo, -W foo, -W err-foo, respectively.

Forbid is new, and means "deny, and you can't override it".
2012-07-26 17:08:33 -07:00
Damian Gryski
cdd052f6ea core::io::writer : add get_type() method
The get_type() method can hint to users what kind of item might be
   under the hood.
2012-07-26 17:05:13 -07:00
Patrick Walton
1dd8acd56a core: Mark a bunch of numeric functions as pure 2012-07-26 14:43:44 -07:00
Eric Holk
e1d4bd463c 3x faster typechecking 2012-07-25 18:00:29 -07:00
Eric Holk
3aee39a6ec Add #[inline(never)], and also fixed inlining on vec::push 2012-07-25 17:30:13 -07:00
Graydon Hoare
a63e0e47f0 Update some str functions to slices, merge as_buf and unpack_slice. 2012-07-24 12:35:52 -07:00
Glenn Willen
28519c8ef6 Add to_str for hashmap. 2012-07-23 17:30:02 -07:00
Erick Tryzelaar
06ac0c2b1d Switch reader to work with preallocated vecs
This closes #2901.
2012-07-23 17:15:30 -07:00
Ben Blum
cbaa602dbd Convert std::test to new task_builder interface 2012-07-23 20:09:17 -04:00
Ben Blum
e0e9e451e7 Convert os/priv/uv to new task_builder interface 2012-07-23 20:09:17 -04:00
Daniel Patterson
ee2abc1cae Adding simple net::url module to parse and format urls. 2012-07-23 15:44:03 -07:00
Niko Matsakis
e0ea67a2a6 prevent regions from escaping in ifaces; remove &r.T syntax 2012-07-18 11:48:58 -07:00
Eric Holk
73a24b8abb Fixing coherence error in bitv 2012-07-17 17:46:32 -07:00
Eric Holk
7b8171ef2d Added liveness analysis for protocols, and removed warnings about empty states. 2012-07-17 17:46:31 -07:00
Eric Holk
c858eb0654 Modernize bitv somewhat 2012-07-17 17:46:31 -07:00
Patrick Walton
db020ab63c rustc: Implement and enforce instance coherence 2012-07-17 15:46:43 -07:00
Gareth Daniel Smith
fe43d66613 replace core::tuple functions with methods 2012-07-16 22:33:20 +01:00
Niko Matsakis
1fbb9d035d improve failure message when key is not present 2012-07-14 17:37:19 -07:00
Michael Sullivan
d884085f43 Tear out ty_str and ty_vec. 2012-07-14 12:19:36 -07:00
Michael Sullivan
92743dc2a6 Move the world over to using the new style string literals and types. Closes #2907. 2012-07-14 01:03:43 -07:00
Michael Sullivan
985b52be6d Support prefix notation for vstore strings. Closes #2906. 2012-07-13 17:03:49 -07:00
Michael Sullivan
ad5c4ed351 Make push_str overallocate. Use it in some places that were still doing +=. 2012-07-13 16:37:27 -07:00
Lindsey Kuper
5a63b2100e More consistent use of backticks and "expected" in error messages.
Got some of the debug messages, here, too.  I figure it doesn't hurt
to get used to doing this even in places where users won't ever see
it.
2012-07-13 15:31:39 -07:00
Eric Holk
aba665da32 Fix the signature on vec::view.
Due to limitations in region inference, this has the effect of making vec::view pretty much entirely unusable.
2012-07-12 18:16:00 -07:00
Graydon Hoare
18da7fef88 Merge remote-tracking branch 'origin/dist-snap' into incoming 2012-07-12 17:14:55 -07:00
Michael Sullivan
2ea9c8df0f Accept prefix notation for writing the types of str/~ and friends. 2012-07-12 16:52:26 -07:00
Michael Sullivan
1c62f5ff74 Get rid of all of the remaining /~s in the code base. 2012-07-12 15:13:18 -07:00
Michael Sullivan
120773b2a7 Change the interface of placement new to take a tydesc as part of Issue #2831. 2012-07-11 11:42:49 -07:00
Graydon Hoare
aa7b3cc929 Fix some version numbers. 2012-07-11 09:09:08 -07:00
Brian Anderson
ccee8cb4f9 std: Fix deadlock by unsupervising the global I/O task 2012-07-10 15:10:13 -07:00
Erick Tryzelaar
1972ae23e5 libcore: add a task::set_sched_mode fn 2012-07-10 08:45:08 -07:00
Graydon Hoare
c26d02557e Switch 'cont' to 'again' everywhere. Close #2229. 2012-07-09 14:37:48 -07:00
Brian Anderson
aa232a5269 Merge pull request #2846 from gwillen/1c882842e06431767676887f97f9dcc0ee50a7b9
Add map::clear
2012-07-09 13:26:48 -07:00
Patrick Walton
e41029d236 rustc: Switch to the new resolution pass 2012-07-09 10:27:13 -07:00
Glenn Willen
1c882842e0 Add clear() to the map interface.
Add clear to the map interface, and implement it in hashmap and smallintmap.
2012-07-08 16:06:48 -07:00
Niko Matsakis
a856bccdc6 Revert "rustc: Switch to the new resolution pass"
This reverts commit c4af6e92fb.

Branch was burning...many, many unresolved imports.
2012-07-06 20:45:06 -07:00