1950 Commits

Author SHA1 Message Date
Patrick Walton
6ce74460e6 librustc: Disallow trait bounds in types, enumerations, and structure definitions. r=tjc 2013-01-29 10:42:58 -08:00
Patrick Walton
eb4d39e1fe libstd: Remove "dual impls" from the language and enforce coherence rules. r=brson
"Dual impls" are impls that are both type implementations and trait
implementations. They can lead to ambiguity and so this patch removes them
from the language.

This also enforces coherence rules. Without this patch, records can implement
traits not defined in the current crate. This patch fixes this, and updates
all of rustc to adhere to the new enforcement. Most of this patch is fixing
rustc to obey the coherence rules, which involves converting a bunch of records
to structs.
2013-01-29 10:42:45 -08:00
Alex Crichton
810eeef444 Fix the len() method on LinearMap during popping 2013-01-29 11:16:39 -05:00
Tim Chevalier
c5461e46ae core: Allow legacy records in in a few modules
Because of macros, #[allow(structural_records]] in
extfmt, gc, os, pipes, and run. Will need a snapshot.
2013-01-28 19:41:56 -08:00
Brian Anderson
a72aeef9f7 Revert readline optimization and add test 2013-01-28 19:32:02 -08:00
Michael Neumann
d38939c7e8 Slightly optimize read_line()
No need to allocate an additional vector. Instead directly push into the
string.
2013-01-28 14:40:11 -08:00
Michael Neumann
02de11c1e7 Fix example code 2013-01-28 14:40:11 -08:00
Daniel Micay
8eaf0737b7 get rid of LinearMap's find_copy method 2013-01-28 16:06:09 -05:00
Brian Anderson
83ca034d2e Merge remote-tracking branch 'brson/nocommupstream2' 2013-01-26 14:57:58 -08:00
Tim Chevalier
0743cec023 core: Remove structural records in library tests 2013-01-26 11:35:17 -08:00
Tyler Bindon
3a5d2cdbf3 Fix Option camel case in comments 2013-01-25 19:42:23 -07:00
Brian Anderson
1ef83945c1 Merge remote-tracking branch 'brson/nocommupstream'
Conflicts:
	src/libcore/private.rs
	src/libcore/task/mod.rs
	src/libcore/task/spawn.rs
	src/libstd/net_tcp.rs
	src/libstd/uv_global_loop.rs
	src/libstd/uv_iotask.rs
2013-01-25 18:06:30 -08:00
Tim Chevalier
85a34c2898 Merge pull request #4625 from thestinger/container
more little container improvements
2013-01-25 11:57:51 -08:00
Tim Chevalier
2d33e308ac core: Mop up Windows breakage 2013-01-24 20:39:09 -08:00
Daniel Micay
e4337a9def remove remaining is_not_empty functions/methods 2013-01-24 23:24:57 -05:00
Daniel Micay
ec3f6e1932 implement Mutable trait for vec 2013-01-24 23:10:14 -05:00
Daniel Micay
d95c9cbe38 replace ConstVector trait with the Container trait 2013-01-24 23:02:44 -05:00
Tim Chevalier
b73d926a7e Merge pull request #4623 from thestinger/map
clean up LinearMap implementation
2013-01-24 19:17:23 -08:00
Daniel Micay
5c14b91bad clean up LinearMap implementation 2013-01-24 22:04:16 -05:00
Erick Tryzelaar
11fd2beef9 Convert dlist records into structs 2013-01-24 16:24:31 -08:00
Erick Tryzelaar
339618a7f9 convert io wrapper records into structs 2013-01-24 16:24:31 -08:00
Erick Tryzelaar
9b17e7a777 Fix another typo 2013-01-24 16:24:31 -08:00
Erick Tryzelaar
5085eb3c28 Convert pipes::Buffer into a struct 2013-01-24 16:24:31 -08:00
Erick Tryzelaar
feab095d65 Convert core::pipes::{Packet,Chan_,Port_} into structs 2013-01-24 16:24:31 -08:00
Erick Tryzelaar
90734a0d33 Convert extfmt::rt::Conv into a struct 2013-01-24 16:24:31 -08:00
Erick Tryzelaar
79a9b23f4a Fix a typo 2013-01-24 16:24:31 -08:00
Erick Tryzelaar
c15facb5c0 Remove "unsafe" from run::start_program 2013-01-24 16:24:30 -08:00
Erick Tryzelaar
e22d2bc4bc core: convert io::Res over to the Drop trait 2013-01-24 16:24:30 -08:00
Erick Tryzelaar
e4d4a1499b convert most of libcore records into structs 2013-01-24 16:24:30 -08:00
Patrick Walton
ad25e208ee librustc: Allow &mut to be loaned; allow self to be loaned; make &mut loanable to &. r=nmatsakis 2013-01-24 13:52:22 -08:00
Patrick Walton
163b97b7bb librustc: Make C functions unsafe 2013-01-24 13:52:21 -08:00
Daniel Micay
dbfe21edda document LinearMap::new 2013-01-24 13:36:55 -05:00
Daniel Micay
acde90dc1c remove old LinearMap constructor 2013-01-24 13:36:04 -05:00
Graydon Hoare
07d0af151a core: fix windows breakage from 982cf90, r=burningtree. 2013-01-23 21:57:05 -08:00
Tim Chevalier
a202dcccca Merge pull request #4594 from thestinger/map
more work on the map trait and TreeMap/LinearMap
2013-01-23 20:10:47 -08:00
Tim Chevalier
982cf90dc6 Add a T_SIGNED type to uint template and eliminate step_down variant
Handle negative steps properly in range_step, fix order of arguments
in tests, and such.
2013-01-23 18:57:57 -08:00
Huon Wilson
1a6e1e2801 libcore: Correct behaviour of range_step for uint, tests for range* functions.
Splits the range_step function into the two directions (up, low -> high,
and down, high -> low) for the uint types, since there is no way to have
`step < 0` for a backwards range.
2013-01-23 18:56:41 -08:00
Huon Wilson
83e3c82d63 libcore: Add range_step and range_rev functions.
Closes #1817
2013-01-23 18:56:41 -08:00
Brian Anderson
bc0c5bb447 core: Stop using oldcomm 2013-01-23 17:35:35 -08:00
Brian Anderson
cc9ab2c033 Remove old comm-based weak task interface 2013-01-23 17:35:34 -08:00
Brian Anderson
a3e087cefa core: Remove private::chan_from_global_ptr. #3915 2013-01-23 17:35:34 -08:00
Brian Anderson
b9608fe423 std: Convert uv_global_loop to use pipes 2013-01-23 17:35:34 -08:00
Brian Anderson
fb9299346a core: Convert getenv/setenv to use a mutex
This much simpler implementation uses a global mutex
and eliminates the kernel environment channel.
2013-01-23 17:35:34 -08:00
Brian Anderson
8852279a9e core: Add new weak task API 2013-01-23 17:35:31 -08:00
Daniel Micay
7f0fa143bc switch LinearMap to current constructor convention 2013-01-23 18:01:24 -05:00
Patrick Walton
54b2cad8b3 libsyntax: Remove fn() unsafe { ... }. r=graydon 2013-01-23 14:41:08 -08:00
Tim Chevalier
10e8ae852d Merge pull request #4597 from Dretch/atvec-constructors
Oops - add the missing pubs!
2013-01-23 14:37:47 -08:00
gareth
ba2a3e8234 Oops - add the missing pubs! 2013-01-23 22:30:56 +00:00
Daniel Micay
591eefd740 improve hashmap/treemap documentation 2013-01-23 16:47:27 -05:00
Daniel Micay
988ce7180d rm unnecessary usage of 'unsafe' from hashmap 2013-01-23 16:39:09 -05:00