John Clements
fe82374328
json bugfixes
2013-02-09 13:37:04 -08:00
John Clements
765961438d
fix typos in sample code, add enum to json encoder, add test case
2013-02-09 13:37:04 -08:00
bors
d90abd5879
auto merge of #4848 : nikomatsakis/rust/issue-4821-bad-kind-computation, r=catamorphism
...
...ear
values to be copied. Rewrite kind computation so that instead of directly
computing the kind it computes what kinds of values are present in the type,
and then derive kinds based on that. I find this easier to think about.
Fixes #4821 .
r? @catamorphism
2013-02-09 10:20:55 -08:00
Matthew McPherrin
0a062b50f1
Remove trailing whitespace
2013-02-08 20:17:50 -05:00
Daniel Micay
94fd95a4f1
oldmap: rm unneeded unsafe
2013-02-08 19:30:54 -05:00
Daniel Micay
0127828b5b
oldmap: separate out the methods that need Copy
2013-02-08 19:20:36 -05:00
Daniel Micay
a32c5c73ee
oldmap: get rid of legacy _ref suffixes
2013-02-08 19:12:51 -05:00
Matthew McPherrin
46df7985a5
Merge branch 'master' of https://github.com/mozilla/rust
2013-02-08 15:21:46 -05:00
Niko Matsakis
a380df809c
Fix subtle error in caching during kind computation that could cause linear
...
values to be copied. Rewrite kind computation so that instead of directly
computing the kind it computes what kinds of values are present in the type,
and then derive kinds based on that. I find this easier to think about.
Fixes #4821 .
2013-02-08 07:20:39 -08:00
Daniel Micay
8c32cd2dc8
fix map tests
2013-02-07 22:58:16 -05:00
Daniel Micay
9599cc86f0
implement BaseIter for LinearMap
2013-02-07 22:28:58 -05:00
Daniel Micay
fe841f3e56
implement ReverseIter for SmallIntMap
2013-02-07 22:04:38 -05:00
Daniel Micay
a2f922f282
implement ReverseIter for TreeMap and TreeSet
2013-02-07 22:04:38 -05:00
Daniel Micay
66d5030763
implement BaseIter for SmallIntMap
2013-02-07 22:04:38 -05:00
Daniel Micay
e018244777
make Option's map and map_default use a lifetime
2013-02-07 22:04:38 -05:00
Daniel Micay
f6e0df6563
implement BaseIter for TreeMap
2013-02-07 22:04:37 -05:00
Daniel Micay
83270d2d79
rm each method from the Map trait
...
the map types should implement BaseIter instead
2013-02-07 22:04:35 -05:00
Daniel Micay
d903231f1e
add a BaseIter implementation for PriorityQueue
2013-02-07 20:18:15 -05:00
Patrick Walton
472797b04a
librustc: Lots of de-muting. rs=demuting
2013-02-07 16:17:39 -08:00
bors
37a610a7d9
auto merge of #4831 : bjz/rust/incoming, r=pcwalton
...
This is useful for comparing more complex types that include floats.
2013-02-07 08:32:09 -08:00
Niko Matsakis
a32498d846
Make ~fn non-copyable, make &fn copyable, split barefn/closure types,
...
correct handling of moves for struct-record update.
Part of #3678 . Fixes #2828 , #3904 , #4719 .
2013-02-07 05:53:30 -08:00
Brendan Zabarauskas
17a14fe0e9
Merge branch 'incoming' of https://github.com/mozilla/rust into incoming
2013-02-07 22:55:23 +11:00
Brendan Zabarauskas
e4c7d8ec87
Add type parameter for epsilon value
2013-02-07 22:54:52 +11:00
Matthew McPherrin
64fedfbc4e
Fix sample program to compile in modern rust
2013-02-06 23:42:55 -05:00
Brendan Zabarauskas
b081f59495
Convert fuzzy_epsilon constant to upper case and make public
2013-02-07 10:25:41 +11:00
Daniel Micay
dab2f2fac0
remove old snapshot workaround from smallintmap
2013-02-06 17:37:56 -05:00
Daniel Micay
bdfb930f34
treemap: make map_next and set_next public
2013-02-06 17:37:56 -05:00
Daniel Micay
1694168783
update treemap FIXME
2013-02-06 17:37:56 -05:00
Daniel Micay
37e998696f
get rid of implicit vec copies in treemap iterator
...
Each call to next() was doing a copy rather than a move. There's
currently no way for this to be a method that uses &mut self, so it has
to be a free function. Closes #4763 .
2013-02-06 17:37:56 -05:00
Daniel Micay
5b6c26b4e4
treemap: get rid of some implicit vector copies
2013-02-06 17:37:56 -05:00
Daniel Micay
b91a51daca
remove issue #3148 workarounds (no longer needed)
2013-02-06 17:37:56 -05:00
Patrick Walton
801f3225b2
oldmap: use &K instead of K in find and get
...
This reverts commit a4250a96fd
.
This is not the cause of the nonexhaustive-match failure.
2013-02-05 19:41:45 -08:00
Graydon Hoare
a4250a96fd
Revert "oldmap: use &K instead of K in find and get"
...
This reverts commit 8e643525d4
.
2013-02-05 14:30:53 -08:00
Tim Chevalier
33e2c979ce
Merge branch 'incoming' into removing
2013-02-05 10:33:35 -08:00
Tim Chevalier
2dcb3ed745
Merge
2013-02-05 10:33:28 -08:00
bors
f1b05ece93
auto merge of #4796 : catamorphism/rust/derecord_std, r=catamorphism
...
See #4665
2013-02-05 07:04:15 -08:00
bors
80cd485b49
auto merge of #4784 : alexcrichton/rust/bitv-clear-fix, r=graydon
...
I think that the inversion of `op(&mut w)` may have just been a mistake?
2013-02-04 22:39:53 -08:00
Alex Crichton
406a73fde2
Fix the each_storage() iterator on big bit vectors
2013-02-04 22:59:33 -05:00
bors
bffe3088c7
auto merge of pull req #4777 from thestinger/rust, r=graydon
2013-02-04 17:24:40 -08:00
Tim Chevalier
73a7672b8d
std: Stamp out structural records
...
See #4665
2013-02-04 16:48:52 -08:00
Brian Anderson
e08a805b30
Merge remote-tracking branch 'bstrie/rimov' into incoming
...
Conflicts:
src/libsyntax/parse/parser.rs
src/test/bench/graph500-bfs.rs
src/test/bench/sudoku.rs
src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs
src/test/run-pass/empty-mutable-vec.rs
src/test/run-pass/foreach-nested.rs
src/test/run-pass/swap-2.rs
2013-02-04 11:58:30 -08:00
Erick Tryzelaar
9adfa59d8e
core: convert ToStr::to_str to take explicit &self
2013-02-03 20:47:26 -08:00
Daniel Micay
8e643525d4
oldmap: use &K instead of K in find and get
2013-02-03 23:30:56 -05:00
Brian Anderson
3b396d17d6
Merge remote-tracking branch 'thestinger/old_map' into incoming
...
Conflicts:
src/test/bench/core-map.rs
2013-02-03 17:56:49 -08:00
Marvin Löbel
af4972f3ce
Fixed fmt!
, tests, doc-tests.
2013-02-03 15:37:25 -08:00
Marvin Löbel
a612e49a21
Converted the floating point types to the new string conversion functions.
...
Also fixed all conflicting calls of the old functions in the rest of the codebase.
The set of string conversion functions for each float type now consists of those items:
- to_str(), converts to number in base 10
- to_str_hex(), converts to number in base 16
- to_str_radix(), converts to number in given radix
- to_str_exact(), converts to number in base 10 with a exact number of trailing digits
- to_str_digits(), converts to number in base 10 with a maximum number of trailing digits
- implementations for to_str::ToStr and num::ToStrRadix
- from_str(), parses a string as number in base 10 including decimal exponent and special values
- from_str_hex(), parses a string as a number in base 16 including binary exponent and special values
- from_str_radix(), parses a string as a number in a given base excluding any exponent and special values
- implementations for from_str::FromStr and num::FromStrRadix
2013-02-03 15:37:24 -08:00
Marvin Löbel
7113fd150a
Fixed tests still using old integer to_str
...
Fixed integer tests
2013-02-03 15:37:24 -08:00
Marvin Löbel
eb19462104
Converted libcore/uint-template.rs to the new string functions.
...
- Moved ToStr implementation of unsigned integers to uint-template.rs.
- Marked the `str()` function as deprecated.
- Forwarded all conversion functions to `core::num::to_str_common()`
and `core::num::from_str_common()`.
- Fixed most places in the codebase where `to_str()` is being used.
- Added uint-template to_str and from_str overflow tests.
2013-02-03 15:37:24 -08:00
Daniel Micay
4fd9264875
oldmap: &K instead of K for the remove parameter
2013-02-03 18:20:59 -05:00
Daniel Micay
119c78073b
oldmap: start conversion to explicit self
2013-02-03 15:55:11 -05:00
Daniel Micay
81b4f36d49
oldmap: remove legacy each method
2013-02-03 15:55:11 -05:00
Daniel Micay
2e496818a5
oldmap: get rid of the legacy each_key method
2013-02-03 15:55:10 -05:00
Daniel Micay
88d9d417a1
oldmap: remove the legacy each_value method
2013-02-03 15:55:10 -05:00
Daniel Micay
643479f2e5
oldmap: implement core::container::Mutable
2013-02-03 15:55:10 -05:00
Daniel Micay
1b4eb145f9
oldmap: implement core::container::Container
2013-02-03 15:55:10 -05:00
Daniel Micay
f4a27b2c7d
oldmap: get rid of the legacy contains_key method
2013-02-03 15:55:10 -05:00
Daniel Micay
319eeb1c79
rename map -> oldmap and mark it as deprecated
...
LinearMap is quite a bit faster, and is fully owned/sendable without
requiring copies. The older std::map also doesn't use explicit self and
relies on mutable fields.
2013-02-03 15:55:10 -05:00
Daniel Micay
df31373406
rm commented out std::map code from json module
...
it was replaced by LinearMap
2013-02-03 15:55:09 -05:00
Daniel Micay
ed45354a95
remove old StdMap trait
...
this has been replaced by core::container::Map
2013-02-03 15:55:09 -05:00
Nick Desaulniers
6fb4239bb3
Replace most invocations of fail keyword with die! macro
2013-01-31 22:25:12 -08:00
Daniel Micay
74b317ddc2
modernize smallintmap
...
* switch to explicit self
* get rid of the @ box
* replace DVec with ~[] (to get rid of the mutable field)
* implement the new container::Map trait
2013-01-31 23:22:51 -05:00
Daniel Micay
348d770fed
copy oldsmallintmap.rs to smallintmap.rs
2013-01-31 23:13:56 -05:00
Daniel Micay
70855f5a07
move smallintmap to oldsmallintmap
2013-01-31 23:13:56 -05:00
Daniel Micay
9ba7114515
implement container::Mutable for SmallIntMap
2013-01-31 23:13:56 -05:00
Daniel Micay
aac91267e3
clean up SmallIntMap tests a bit
2013-01-31 23:13:56 -05:00
Daniel Micay
1057eea7ac
drop the StdMap implementation from SmallIntMap
2013-01-31 23:13:55 -05:00
Daniel Micay
274e75cd82
implement container::Container for SmallIntMap
2013-01-31 23:13:55 -05:00
Nick Desaulniers
aee7929469
Replace most invocations of fail keyword with die! macro
2013-01-31 20:12:49 -08:00
Tim Chevalier
793f20ad32
std: remove transitional code
2013-01-31 19:35:57 -08:00
Niko Matsakis
0682ad0eb9
Finalize moves-based-on-type implementation.
...
Changes:
- Refactor move mode computation
- Removes move mode arguments, unary move, capture clauses
(though they still parse for backwards compatibility)
- Simplify how moves are handled in trans
- Fix a number of illegal copies that cropped up
- Workaround for bug involving def-ids in params
(see details below)
Future work (I'll open bugs for these...):
- Improve error messages for moves that are due
to bindings
- Add support for moving owned content like a.b.c
to borrow check, test in trans (but I think it'll
"just work")
- Proper fix for def-ids in params
Def ids in params:
Move captures into a map instead of recomputing.
This is a workaround for a larger bug having to do with the def-ids associated
with ty_params, which are not always properly preserved when inlining. I am
not sure of my preferred fix for the larger bug yet. This current fix removes
the only code in trans that I know of which relies on ty_param def-ids, but
feels fragile.
2013-01-31 12:09:00 -08:00
Ben Striegel
df36bfa758
Repair RIMOV damage to libstd tests
2013-01-30 23:21:57 -05:00
Ben Striegel
dafd759b20
Repair RIMOV damage to libstd
2013-01-30 23:21:16 -05:00
Ben Striegel
0336a8633f
RIMOV, round 10
...
find ./ -type f -name "*.rs" -exec sed -i "s/~\[mut /~\[/g" {} \;
2013-01-30 23:19:08 -05:00
Ben Striegel
3e95a13577
RIMOV, round 8
...
find ./ -type f -name "*.rs" -exec sed -i "s/ \([a-zA-Z_]\+\): ~\[mut /
mut \1: ~\[/g" {} \;
2013-01-30 23:19:08 -05:00
Ben Striegel
b4f47eca2a
RIMOV, round 7
...
find ./ -type f -name "*.rs" -exec sed -i "s/ mut \([a-zA-Z_]\+\):
~\[mut / mut \1: ~\[/g" {} \;
2013-01-30 23:18:08 -05:00
Ben Striegel
f08af9a7a5
RIMOV, round 5
...
find ./ -type f -name "*.rs" -exec sed -i "s/\&\[mut /\&mut \[/g" {} \;
2013-01-30 23:18:08 -05:00
Ben Striegel
12e8151fb0
RIMOV, round 4
...
find ./ -type f -name "*.rs" -exec sed -i "s/let mut \(.*\)\[mut[
]\?/let mut \1\[/g" {} \;
2013-01-30 23:16:56 -05:00
Ben Striegel
5577ce635f
RIMOV, round 3
...
find ./ -type f -name "*.rs" -exec sed -i "s/let \(.*\)\[mut[ ]\?/let
mut \1\[/g" {} \;
2013-01-30 23:16:56 -05:00
Patrick Walton
366812a5c3
librustc: Change self
as a type to Self
everywhere. r=brson
2013-01-30 19:52:45 -08:00
Graydon Hoare
4030aaff20
rustc: make integral type inference transactional, close #3211 , close #4401 , close #3398 .
2013-01-30 16:21:19 -08:00
Tim Chevalier
b927e48a26
Merge pull request #4682 from thestinger/treemap
...
Set trait improvements + minor treemap cleanup
2013-01-29 20:09:15 -08:00
Brian Anderson
da4b376897
std: Stop using oldcomm
2013-01-29 19:54:55 -08:00
Tim Chevalier
0aef28dd6d
De-capitalize "note" to get rid of spurious tidy warnings
2013-01-29 19:26:55 -08:00
Daniel Micay
6b08683e15
add intersection and union to the Set trait
2013-01-29 22:24:00 -05:00
Daniel Micay
99eb4ddddd
add difference and symmetric_difference to Set
2013-01-29 21:59:58 -05:00
Daniel Micay
42cafcee2c
add is_disjoint to the Set trait
2013-01-29 21:30:55 -05:00
Daniel Micay
bfa9c9a00f
add is_subset and is_superset to the Set trait
2013-01-29 21:30:55 -05:00
Daniel Micay
456af7a79d
update comments documenting issue #4492 workaround
2013-01-29 21:30:55 -05:00
Daniel Micay
a388e2c1a4
treemap: rm a bit of redundant code
2013-01-29 21:30:55 -05:00
Tim Chevalier
a80a65b3b7
Merge pull request #4676 from thestinger/fuzzy
...
fix FuzzyEq
2013-01-29 13:58:39 -08:00
Daniel Micay
1aa9fdff56
fix FuzzyEq
2013-01-29 16:54:55 -05:00
Tim Chevalier
66b07f1e5d
Fix licenseck to allow 2012-2013 as the year range
2013-01-29 13:48:40 -08:00
Tim Chevalier
5e77d55326
Merge pull request #4664 from thestinger/fuzzy
...
FuzzyEq improvements
2013-01-29 13:36:43 -08:00
Daniel Micay
e0728d41f2
implement fuzzy_eq with fuzzy_eq_eps
2013-01-29 15:35:26 -05:00
Patrick Walton
f1ddb2a32c
libstd: De-export libstd. rs=deexport
2013-01-29 12:06:09 -08:00
Patrick Walton
226cd68f13
librustc: De-implicit-self the visitor. r=graydon
2013-01-29 10:43:12 -08:00
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
Tim Chevalier
31d78b2f07
Add #[legacy_records] crate attribute
...
In rustc, rustdoc, rusti, syntax, and std.
2013-01-28 19:41:56 -08:00
Daniel Micay
fce6446e7e
add a FuzzyEq method that accepts an epsilon value
2013-01-28 21:25:58 -05:00
Tim Chevalier
3a6849f36b
Revert "Revert "Merge pull request #4633 from thestinger/treemap""
...
This reverts commit d73077f82d
.
2013-01-28 17:20:29 -08:00
Daniel Micay
abb79cb52d
update FuzzyEq to explicit self
2013-01-28 19:28:40 -05:00
Daniel Micay
52975202af
fix std::cmp docstring
2013-01-28 19:28:23 -05:00
Brian Anderson
d9170e14b1
Tidy
2013-01-28 14:41:20 -08:00
Michael Neumann
1ecdf3abc1
Greatly improve performance for TcpSocketBuf.read
...
For every call to the read() function the internal buffer was copied
into a new buffer (minus the bytes copied into the result buffer). When
the internal buffer is large enough, this severely affects performance,
especially when read_line() is used which calls read_byte() (which calls
read()) for each read byte.
For line oriented I/O this wasn't all that bad, because the internal
buffers usually never were very big. The effect is much more visible
once the buffer grows larger.
Now we always first look into the internal buffer and copy as many bytes
as possible (and desired) into the result buffer. If we need more, we
call the socket read function and use the result as the new internal
buffer, then continue to copy from the (new) internal buffer, and so on.
2013-01-28 14:40:11 -08:00
Michael Neumann
0c3ef3cc6b
Convert log(debug, ...) to debug!(...)
2013-01-28 14:40:11 -08:00
Brian Anderson
2a48aef0a8
Merge remote-tracking branch 'thestinger/hashmap' into deriving
2013-01-28 14:28:59 -08:00
Brian Anderson
c75cc0aa10
Merge remote-tracking branch 'codeblack08/treemap-ord' into deriving
2013-01-28 14:15:58 -08:00
Daniel Micay
8eaf0737b7
get rid of LinearMap's find_copy method
2013-01-28 16:06:09 -05:00
Niko Matsakis
08bc19cbcd
Remove bounds from type decl of smallintmap
...
r=brson
2013-01-28 10:01:55 -08:00
Cody Schroeder
6a4d1855bf
std: implement lexicographical Ord for TreeMap/TreeSet
2013-01-26 16:39:17 -08:00
Brian Anderson
83ca034d2e
Merge remote-tracking branch 'brson/nocommupstream2'
2013-01-26 14:57:58 -08:00
Tyler Bindon
edc94f5c23
Fix Option camel case in xfailed/ignored tests
2013-01-25 19:42:23 -07: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
Cody Schroeder
265b33c239
Declare std::arc::unwrap to be pub
2013-01-25 17:25:41 -08:00
Graydon Hoare
10eb620537
register snapshots
2013-01-25 15:06:07 -08:00
Tim Chevalier
d73077f82d
Revert "Merge pull request #4633 from thestinger/treemap"
...
I was too hasty in merging -- this needs a snapshot.
This reverts commit 4a7e1ab374
, reversing
changes made to e447521c1c
.
2013-01-25 13:39:04 -08:00
Tim Chevalier
85a34c2898
Merge pull request #4625 from thestinger/container
...
more little container improvements
2013-01-25 11:57:51 -08:00
Daniel Micay
ca8f09a39e
use mut function argument syntax in priority_queue
2013-01-25 13:28:43 -05:00
Daniel Micay
aff3db26aa
use mutable function argument syntax in treemap
2013-01-25 10:55:18 -05:00
Brian Anderson
19aa88cd64
Stop using oldcomm in uv_global_loop tests
2013-01-24 23:55:11 -08:00
Tim Chevalier
e447521c1c
std: Mop up Mac/Linux breakage
2013-01-24 22:02:09 -08:00
Daniel Micay
e4337a9def
remove remaining is_not_empty functions/methods
2013-01-24 23:24:57 -05:00
Tim Chevalier
d191e89d9e
std: Fix broken Windows function
2013-01-24 20:12:07 -08:00
Daniel Micay
d95c9cbe38
replace ConstVector trait with the Container trait
2013-01-24 23:02:44 -05:00
Tim Chevalier
9898485d4f
Merge pull request #4613 from erickt/incoming
...
convert most of libcore and libstd to structs, work around tzset race
2013-01-24 17:24:45 -08:00
Tim Chevalier
f19e16881e
syntax/rustc: Less copy
2013-01-24 16:45:20 -08:00
Erick Tryzelaar
3c24419c19
time tests are racing on tzset, so merge the tests together.
...
This attempts to fix issue #3327 .
2013-01-24 16:24:31 -08:00
Erick Tryzelaar
e84576b888
convert most of libstd over to structs
2013-01-24 16:24:31 -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
bbbb80559c
librustc: Disallow &mut
loans from overlapping with any other loans
2013-01-24 13:52:21 -08:00
Patrick Walton
163b97b7bb
librustc: Make C functions unsafe
2013-01-24 13:52:21 -08:00
Tim Chevalier
e43cff6657
Merge pull request #4616 from thestinger/priority_queue
...
remove is_not_empty method from PriorityQueue
2013-01-24 12:16:03 -08:00
Daniel Micay
d912d53ea9
remove is_not_empty method from PriorityQueue
2013-01-24 14:46:09 -05:00
Daniel Micay
acde90dc1c
remove old LinearMap constructor
2013-01-24 13:36:04 -05: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
Daniel Micay
bba5520d62
fix tests
2013-01-23 21:46:33 -05: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
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
Daniel Micay
591eefd740
improve hashmap/treemap documentation
2013-01-23 16:47:27 -05:00
Daniel Micay
45c9f6a099
add find method to the core::container::Map trait
2013-01-23 14:25:06 -05:00
Daniel Micay
ee0a8c68ab
rename hashmap find_ref/get_ref -> find/get
2013-01-23 14:25:06 -05:00
Daniel Micay
203fcbd0f3
rename hashmap find/get -> find_copy/get_copy
2013-01-23 14:25:06 -05:00
Daniel Micay
bc96fe9c49
get rid of the std::map::Map LinearMap impl
...
This legacy trait needs to be dropped in order to migrate to
core::container::Map, which doesn't require @ and Copy, and will make
proper use of borrowed pointers.
2013-01-23 14:25:06 -05:00
Daniel Micay
b7ef28c33a
rename send_map to hashmap
...
This makes the module much more discoverable, and is in line with the
'treemap' naming.
2013-01-23 14:25:01 -05:00
Tim Chevalier
995ccc0d82
Merge pull request #4596 from Trinick/tomutrename
...
core: Rename to_mut and from_mut to cast_to_mut and cast_from_mut
2013-01-23 10:56:08 -08:00
Trinick
9dc8e96c5f
core: Rename to_mut and from_mut to cast_to_mut and cast_from_mut
2013-01-23 10:09:45 +00:00
Tim Chevalier
dfa97c21a5
Merge pull request #4586 from thestinger/treemap
...
drop is_not_empty from TreeSet/TreeMap
2013-01-22 23:08:18 -08:00
Graydon Hoare
93e969e356
std: un-ignore strptime test; fix bug introduced by 1a226f instead.
2013-01-22 21:42:24 -08:00
Daniel Micay
7eb8642aed
drop is_not_empty from TreeSet/TreeMap
2013-01-22 22:36:29 -05:00
Tim Chevalier
e31ebeadc1
std: Ignore time::tests::test_strptime, it's failing for some reason
...
I'll file an issue.
2013-01-22 19:09:21 -08:00
Graydon Hoare
499f00de1d
std: various hacking on workcache.
2013-01-22 17:55:36 -08:00
Tim Chevalier
1a226f5807
Merge pull request #4466 from ScriptDevil/master
...
Range checking and miscellaneous fixes tin time library
2013-01-22 16:10:48 -08:00
Tim Chevalier
e02449c41d
Merge pull request #4571 from thestinger/container
...
more work on container traits
2013-01-22 10:57:26 -08:00
Daniel Micay
6f4d86ed90
add a base Container trait
2013-01-22 08:10:08 -05:00
Daniel Micay
d635a6e506
add a container::Map trait
2013-01-22 08:10:08 -05:00
Daniel Micay
ffb9049274
add a Mutable container trait with clear
2013-01-22 08:09:53 -05:00
Chris Peterson
f5a3ce687d
Add Timespec comment and assert about negative nsec
2013-01-21 20:51:58 -08:00
Daniel Micay
66e50892c1
style fix
2013-01-21 21:27:21 -05:00
Tim Chevalier
0a8c039135
Merge pull request #4506 from thestinger/mkdtemp
...
clean up tempfile module and rm FIXME
2013-01-20 14:18:00 -08:00
Tim Chevalier
fa4f4fa673
Merge pull request #4519 from cpeterso/impl-timespec-ord
...
Implement Ord trait for Timespec
2013-01-20 14:15:29 -08:00
Daniel Micay
13d07ad0a6
add a Set trait and implement it for TreeSet
2013-01-20 14:58:19 -05:00
Alex Crichton
95d25ca47c
Fix the difference method on bit vectors
2013-01-19 20:17:12 -05:00
Brian Anderson
6b6acde972
Add a license check to tidy. #4018
2013-01-17 23:28:42 -08:00
Daniel Micay
c7abdd3847
re-borrow in heir_swap (fixes compile)
2013-01-17 16:54:12 -08:00
Daniel Micay
f7d9485331
indentation fix
2013-01-17 16:54:12 -08:00
Daniel Micay
3fe6faace8
make is_superset/is_subset O(n+m) instead of O(n*log(m))
2013-01-17 16:54:12 -08:00
Daniel Micay
4f92d8fb52
make intersection O(n+m) instead of O(n*log(m))
2013-01-17 16:54:12 -08:00
Daniel Micay
9fb49088b3
make is_disjoint O(n+m) instead of O(n*log(m))
2013-01-17 16:54:12 -08:00
Daniel Micay
8935771377
cleanup
2013-01-17 16:54:12 -08:00
Daniel Micay
4b567dd067
add TreeSetIterator
2013-01-17 16:54:12 -08:00
Daniel Micay
2b17e2fc18
docstring/comment fixes
2013-01-17 16:54:11 -08:00
Daniel Micay
3df183e7ab
fix bug in union implementation (missing return)
2013-01-17 16:54:11 -08:00
Daniel Micay
a73f4b1baa
implement symmetric_difference
2013-01-17 16:54:11 -08:00
Daniel Micay
d44084e100
implement set union
2013-01-17 16:54:11 -08:00
Daniel Micay
b8caba2fce
make TreeSet tests a bit more paranoid
2013-01-17 16:54:11 -08:00
Daniel Micay
1aaeda1e1e
add scaffolding for symmetric_difference/union
2013-01-17 16:54:11 -08:00
Daniel Micay
90b111f4bf
range search would be nice
2013-01-17 16:54:11 -08:00
Daniel Micay
670748e383
implement set difference
2013-01-17 16:54:11 -08:00
Daniel Micay
3b3ecc9ffc
fix API of union
2013-01-17 16:54:11 -08:00
Daniel Micay
dc27759bd1
remove 'TODO' from the list of future improvements
2013-01-17 16:54:11 -08:00
Daniel Micay
d001171435
rm extra newline
2013-01-17 16:54:11 -08:00
Daniel Micay
cae273abc0
clean up equality code a bit
2013-01-17 16:54:11 -08:00
Daniel Micay
1e5c553b7c
make Eq implementation O(n)
2013-01-17 16:54:11 -08:00
Daniel Micay
9cc9a7582c
add a lazy forward iterator to TreeMap
2013-01-17 16:54:11 -08:00
Daniel Micay
7f754764d6
replace treemap with a balanced tree
2013-01-17 16:54:11 -08:00
Patrick Walton
f405e41d7a
librustc: Implement write guards for borrowing @mut
to &
or &mut
. r=nmatsakis
2013-01-17 11:50:20 -08:00
Chris Peterson
ed17ce1dda
Implement Ord trait for Timespec
2013-01-16 23:37:21 -08:00
Daniel Micay
46880337f4
clean up tempfile module and rm FIXME
...
This removes the FIXME suggesting that mkdtemp should rely on the
default umask, because that would make it unusable for making a secure
work area in a world writable directory (have to assume that other users
have created files, directories, hard links, etc. in your directory).
The POSIX mkdtemp function creates a directory with 700 permissions to
avoid this problem.
2013-01-16 06:19:41 -05:00
Nick Desaulniers
bb7d7204e2
Swap return value order in pipes::oneshot Issue #4496
2013-01-15 17:18:00 -08:00
Brian Anderson
f1d0478002
Add cfg attrs to handle auto_encode transition
2013-01-14 13:17:20 -08:00
Brian Anderson
fc582bcfce
Merge remote-tracking branch 'mneumann/f-serialize'
2013-01-14 12:56:31 -08:00
Ashok Gautham
e69d491aea
Tidied up long lines
2013-01-14 10:01:09 +05:30
kyeongwoon
987f824f23
Support ARM and Android
...
Conflicts:
src/libcore/os.rs
src/librustc/back/link.rs
src/librustc/driver/driver.rs
src/librustc/metadata/loader.rs
src/librustc/middle/trans/base.rs
2013-01-13 16:43:39 -08:00
Tim Chevalier
26334b64a2
Merge pull request #4411 from wting/4203_rename_memcpy
...
Rename memcpy, memmove, memset
2013-01-13 14:58:24 -08:00
Tim Chevalier
9bb399a6d6
Merge pull request #4444 from JensNockert/pub-semaphore
...
Make std::sync::semaphore() public
2013-01-13 14:56:14 -08:00
Ashok Gautham
a157f1d5bf
Add range checking in the time library
...
This was requested in Issue #2350 . New function match_digits_in_range
added and used instead of match_digits wherever needed.
2013-01-13 17:18:10 +05:30
Ashok Gautham
406d2b3bfe
Fix errors in how parsed time values were used
...
%u flag takes a value in the range of 1-7. However value needs to be
stored in tm.tm_wday between 0 and 6.
%y takes a two-digit year value. Subtracting 1900_i32 from it is not
needed.
2013-01-13 17:18:10 +05:30
Ashok Gautham
ca9358388a
Fix incorrect error messages in the time library
2013-01-13 17:18:10 +05:30
Patrick Walton
802d475190
libstd: "target_os = win32", not "target_os = windows". rs=bustage
2013-01-12 10:11:44 -08:00
Tim Chevalier
0bc730f9b0
Merge pull request #4443 from wting/4386_add_privs
...
Adds priv qualifiers where they have been commented out before implementation.
2013-01-11 20:11:57 -08:00
Patrick Walton
063a7ad481
libstd: Ignore failing test on Windows
2013-01-11 15:47:11 -08:00
Tim Chevalier
4c441e95d6
Comment out test_decode_form_urlencoded again. Filed issue 4449. rs=breakage
2013-01-11 13:40:49 -08:00
Patrick Walton
9b3452e10a
libstd: Fix std test. rs=busted
2013-01-11 09:22:23 -08:00
Jens Nockert
6df643981b
Make std::sync::semaphore() public
2013-01-11 12:51:16 +01:00
William Ting
9fd970ad13
Adds priv qualifiers where they have been commented out before implementation.
...
Updates #4386 .
2013-01-11 02:30:10 -06:00
Patrick Walton
ca71c6ec5b
librustc: Make all external functions unsafe. r=tjc
2013-01-10 21:24:08 -08:00
Tim Chevalier
0274292bed
std: Address XXXes in flatpipes
2013-01-10 20:10:10 -08:00
Tim Chevalier
3e7da96fd2
std: Fix pattern match on reference, address an XXX
2013-01-10 20:10:10 -08:00
Tim Chevalier
30c308b952
std: Fix net_url test that was commented out
2013-01-10 20:10:09 -08:00
Tim Chevalier
0ce0f83a38
std: Fix test that was commented out
2013-01-10 20:10:09 -08:00
Tim Chevalier
e1c52a4a9f
core: Change XXXs into proper FIXMEs with issue numbers
2013-01-10 20:10:09 -08:00
gifnksm
360982f24f
Fix: BigInt tests fail on 32-bit platforms
2013-01-10 22:47:55 +09:00
William Ting
5cfde77bca
Rename memcpy, memmove, memset to prevent any confusion with the C equivalents.
...
Closes #4203 .
2013-01-10 01:24:41 -06:00
Graydon Hoare
1f03ba134f
std: fix net::tcp::test fallout from 2db3abd
harder
2013-01-09 19:12:51 -08:00
Niko Matsakis
2b92962aa2
A collection of refactorings that I found it hard/tiresome to divide:
...
- Make `extern fn()` assignable to any closure type, rather than
a subtype.
- Remove unused int_ty_set and float_ty_set
- Refactor variable unification and make it more DRY
- Do fn sub/lub/glb on the level of fn_sig
- Rename infer::to_str::ToStr to infer::to_str::InferStr
- Capitalize names of various types
- Correct hashing of FnMeta
- Convert various records-of-fns into structs-of-fns. This is both
eliminating use of deprecated features and more forwards compatible
with fn reform.
r=pcwalton
2013-01-09 14:59:07 -08:00
Graydon Hoare
aebbd6bb46
std: fix net::tcp::test fallout from 2db3abd
2013-01-09 09:26:59 -08:00
Patrick Walton
2db3abddcd
librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc
2013-01-08 22:02:35 -08:00
Brian Anderson
3a5b641720
Only ignore failing bigint tests on 32-bit platforms
2013-01-08 19:46:03 -08:00
Patrick Walton
44ab00ee37
Revert "librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc"
...
This reverts commit a8d37af247
.
2013-01-08 19:29:16 -08:00
Patrick Walton
a8d37af247
librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc
2013-01-08 19:27:57 -08:00
Brian Anderson
fd872284bb
Ignore some failing bigint tests
2013-01-08 17:47:41 -08:00
Brian Anderson
2d9b1fee8f
Merge remote-tracking branch 'gifnksm/bigint' into kind-names
2013-01-08 11:28:56 -08:00
Tim Chevalier
0d4cf3ed72
remove apparently-superfluous extra parens from types
2013-01-02 15:33:13 -08:00
Peter Williams
ae69c2fc7d
std: Constify the bytes sent to Sha1::input
...
We are of course never going to modify the data, and this change allows us to
accept data from to_bytes::IterBytes types.
2013-01-02 15:33:13 -08:00
Brian Anderson
587ce4894e
Merge pull request #4324 from steveklabnik/std_net
...
Add some extra description for std::net
2012-12-31 22:04:36 -08:00
Steve Klabnik
9433284a11
Add some extra description for std::net
2013-01-01 01:02:48 -05:00
Patrick Walton
10333a5f3d
libstd: Comment out mysteriously failing net-url test. rs=busted
2012-12-29 21:43:18 -08:00
Ben Alpert
5910773c2e
doc: Rename mention of insert_or_update_with_key
...
As far as I can tell, these docs were meant to refer to update_with_key.
2012-12-28 14:04:43 -08:00
Patrick Walton
13879d8e9f
libstd: Fix tests. rs=bustage
2012-12-28 12:48:27 -08:00
Patrick Walton
fa5ee934ed
libstd: Fix a bunch of resolve errors in tests. rs=fire
2012-12-27 18:24:18 -08:00
Patrick Walton
57c599914a
librustc: Terminate name searches at the nearest module scope for paths that contain at least two components. r=graydon
2012-12-27 10:02:54 -08:00
Michael Neumann
2b6c456bf6
Enhance auto_encode to take number of struct fields
...
emit_struct and read_struct takes an additional len:uint parameter which tells
us how many fields the struct we are working on has.
This is required to implement an Encoder for the msgpack [1] serialization
format. To serialize a struct with msgpack you have to use arrays and the size
of the array has to be know before each of the elements are written out. JSON
as an example doesn't have this problem as it uses '[' and ']' delimiters for
arrays.
[1]: www.msgpack.org
2012-12-27 06:16:16 -06:00
gareth
fddc849d75
Convert core::io to use explicit self (for issue #4118 and issue #2004 )
2012-12-24 18:29:02 -08:00
Chris Peterson
8060bd846a
std: Mark some functions as pure
2012-12-24 18:29:02 -08:00
Graydon Hoare
329316ce15
bump 0.5 => 0.6, redirect some URLs in docs.
2012-12-24 18:29:01 -08:00
Erick Tryzelaar
b6f0f300d5
std: modernize net_url
...
This switches over to using structs and send_maps for
query string parsing.
2012-12-24 18:29:01 -08:00
Erick Tryzelaar
03b5fcabbd
Switch chain calls to use Option::chain method
2012-12-24 18:29:01 -08:00
Tim Chevalier
66dc4898c7
Merge pull request #4278 from cpeterso/incoming-pure-functions
...
Mark some more core and std functions as pure
2012-12-24 11:33:22 -08:00
gareth
feff3a9c6c
Convert core::io to use explicit self (for issue #4118 and issue #2004 )
2012-12-24 18:52:53 +00:00
Chris Peterson
ffaa477368
std: Mark some functions as pure
2012-12-23 14:38:01 -08:00
Tim Chevalier
197a1f9cfe
Merge pull request #4243 from erickt/incoming
...
Fix a bug in Result::unwrap_err (and minor cleanup)
2012-12-23 13:49:32 -08:00
Tim Chevalier
b1b0c297a4
Merge pull request #4249 from graydon/0.6-bump
...
bump 0.5 => 0.6, redirect some URLs in docs.
2012-12-23 13:47:11 -08:00
Tim Chevalier
79a68ef212
Merge pull request #4251 from erickt/url
...
std: modernize net_url
2012-12-23 13:45:31 -08:00
gifnksm
68c689f1ca
Convert @[BigDigit] to ~[BigDigit]
2012-12-22 15:14:26 +09:00
gifnksm
54b548795f
Impl Zero, One of BigInt, BigUint
2012-12-22 15:14:26 +09:00
gifnksm
0e83d70cc1
Convert std::bigint to explicit self.
2012-12-22 15:14:26 +09:00
gifnksm
c6a8778ef7
Move BigUint and BigDIgit to std::bigint.
2012-12-22 15:14:26 +09:00
gifnksm
ccc1f8d5e8
Implement BigInt and BigUint.
2012-12-22 15:14:26 +09:00
Graydon Hoare
dbd36111fe
bump 0.5 => 0.6, redirect some URLs in docs.
2012-12-21 15:35:49 -08:00
Erick Tryzelaar
d6faf23ca3
std: modernize net_url
...
This switches over to using structs and send_maps for
query string parsing.
2012-12-21 07:47:32 -08:00
Brian Anderson
2fd8ebd03a
Ignore some time tests
2012-12-20 21:39:11 -08:00
Erick Tryzelaar
beec519316
Switch chain calls to use Option::chain method
2012-12-20 21:16:02 -08:00
Erick Tryzelaar
76a2891feb
Remove the cfg(stageN)-specific serialize code.
2012-12-20 12:52:53 -08:00
Erick Tryzelaar
b865b4b70d
Fix a warning in the workcache test.
2012-12-19 18:16:20 -08:00
Erick Tryzelaar
c14105bb8a
Remove serialize::traits submodule.
2012-12-19 18:16:20 -08:00
Erick Tryzelaar
9c673b246c
Remove the old serialization code
...
Closes #3713 .
2012-12-19 18:16:20 -08:00
Erick Tryzelaar
82a983de68
Remove superfluous parentheses.
2012-12-18 20:54:13 -08:00
Brian Anderson
97ddf3c7bd
Stop resolving static methods at the module level. Closes #4179
2012-12-18 18:35:18 -08:00
Brian Anderson
5827f1caf6
Fix build breakage
2012-12-17 20:23:09 -08:00
Erick Tryzelaar
8650c6f683
Switch from serialization to std::serialize. (snapshot)
2012-12-17 20:00:36 -08:00
Brian Anderson
ec9305802b
std: Add flatpipes
2012-12-17 18:46:42 -08:00
Brian Anderson
5bf7ba0773
Register snapshots
2012-12-17 16:44:27 -08:00
Brian Anderson
68998724c6
Revert "Register snapshots"
...
This reverts commit d6d12d90ff
.
2012-12-17 16:26:44 -08:00
Brian Anderson
d6d12d90ff
Register snapshots
2012-12-17 16:22:21 -08:00
Daniel Micay
f1e87733bd
add an empty PriorityQueue constructor
2012-12-17 15:23:12 -08:00
Brian Anderson
161d289cc7
Long lines
2012-12-16 19:56:09 -08:00
Brian Anderson
8cbf817c2c
Fix doc comment
2012-12-16 19:53:24 -08:00
Brian Anderson
60ef6095f2
Add priority_queue test for unique pointers
2012-12-16 19:53:14 -08:00
Brian Anderson
90bebe3522
Add various workaround attributes to priority_queue
2012-12-16 19:41:07 -08:00
Daniel Micay
ac695aa21a
priority_queue: add docstring for from_vec
2012-12-16 19:27:06 -08:00
Daniel Micay
b3463ea657
priority_queue: replace copies with moves
2012-12-16 19:27:06 -08:00
Daniel Micay
6c433f22a1
priority_queue: clean up naming
2012-12-16 19:27:06 -08:00
Daniel Micay
ab75d3937d
priority_queue: fix test compilation
2012-12-16 19:27:06 -08:00
Daniel Micay
04df723619
priority_queue: fix siftup/siftdown naming
2012-12-16 19:27:06 -08:00
Daniel Micay
7bd0d71554
priority_queue: avoid copy with top and maybe_top
2012-12-16 19:27:06 -08:00
Daniel Micay
e00c3b05e1
priority_queue: fix to_sorted_vec off-by-one error
2012-12-16 19:27:06 -08:00
Daniel Micay
8b13bf7530
priority_queue: replace some copies with swaps
2012-12-16 19:27:06 -08:00
Daniel Micay
285496bd55
priority_queue: make from_vec a static method
2012-12-16 19:27:05 -08:00
Daniel Micay
757a2afb6b
priority_queue: make to_vec/to_sorted_vec methods
2012-12-16 19:27:05 -08:00
Daniel Micay
dd2b32be56
add priority queue implementation (binary heap)
2012-12-16 19:27:05 -08:00
Brian Anderson
e6d1b02359
Rename core::comm to core::oldcomm
2012-12-14 14:59:32 -08:00
Erick Tryzelaar
786c143a70
Begin renaming serialization to std::serialize. (snapshot)
2012-12-13 18:16:31 -08:00
Brian Anderson
77982112d3
Long lines
2012-12-13 16:17:32 -08:00
Brian Anderson
e7ef82dd70
Change some uses of static methods to use the trait path
2012-12-13 16:15:08 -08:00
Brian Anderson
d809e89c26
Replace some Eq impls with deriving_eq
2012-12-13 16:14:28 -08:00
Brian Anderson
742f354ffb
std: Convert records to structs in getopts
2012-12-13 16:14:28 -08:00
Brian Anderson
ed4fac01b5
Rename Send trait to Owned
2012-12-13 15:52:50 -08:00
Brian Anderson
a277081ee4
Rename Owned trait to Durable
2012-12-13 15:52:50 -08:00
Patrick Walton
4c2e4c37ce
librustc: Make use
statements crate-relative by default. r=brson
2012-12-13 13:05:22 -08:00
Tim Chevalier
38bd694df1
Reverse the order of the results of pipes::stream
...
As per #3637 .
2012-12-11 19:23:28 -08:00
Huon Wilson
76dc7818ea
libstd: Implement read_managed_str for the JSON deserialiser.
...
The FIXME is an underlying issue (a core::at_str library) that this
doesn't address.
2012-12-11 16:04:58 -08:00
Graydon Hoare
a55ea48d2b
libstd: refactor future, remove with(), remove ~ indirection.
...
Conflicts:
src/libstd/future.rs
2012-12-11 15:56:47 -08:00
Graydon Hoare
3ee1adb7ec
libstd: teach workcache to check freshness.
2012-12-11 15:55:08 -08:00
Graydon Hoare
12c32e944d
Add license boilerplate to more files.
2012-12-10 17:32:58 -08:00
Brian Anderson
1b481017ac
Minor cleanups to pipes and serialization
2012-12-10 15:42:34 -08:00
Brian Anderson
9723d3ac2f
Remove transitional code
2012-12-09 17:59:21 -08:00
Tim Chevalier
7b37730598
Make short flags with a single-char arg work in getopts
...
This looks like a big patch, but it's mostly just modernization.
The real change is in the fn called `getopts`, the line
if arg_follows && j < curlen {
Minor bugfix, no review.
Closes #2822
2012-12-07 20:38:40 -08:00
Patrick Walton
98fdcb0b9d
librustc: De-mode pattern bindings. r=nmatsakis
2012-12-07 19:34:57 -08:00
Tim Chevalier
7a365e4aa4
make bblum happy
2012-12-06 21:53:25 -08:00
Tim Chevalier
d2ad028a7c
Rename std::ebml::Reader => std::ebml::reader, same for writer
...
Closes #4076
2012-12-06 16:14:54 -08:00
Patrick Walton
33c1e47c1b
librustc: Implement moves based on type. r=nmatsakis
2012-12-04 15:38:04 -08:00
Patrick Walton
d1ebdbeb6c
librustc: Implement explicit self for Add and Index; add a hack in the borrow checker to support this. r=nmatsakis
2012-12-04 14:51:31 -08:00
Graydon Hoare
00c856c0b1
Update license, add license boilerplate to most files. Remainder will follow.
2012-12-03 17:12:14 -08:00
Graydon Hoare
d783f4d7bb
libs: Remove transitionary material on iter_bytes, add workcache to build.
2012-11-30 10:33:16 -08:00
Brian Anderson
3ed9fbd63c
impls of traits cannot define methods on the anonymous trait
2012-11-29 22:07:49 -08:00
Patrick Walton
a0617eae68
librustc: Eliminate most expressions of the form a.b()
that are not method calls. rs=refactoring
2012-11-29 17:51:56 -08:00
Patrick Walton
9e1c9be16f
librustc: Make the Drop trait use explicit self
2012-11-29 11:06:15 -08:00
Brian Anderson
5a282ec26f
core: Convert some records to structs
2012-11-28 21:50:09 -08:00
Brian Anderson
16f72df704
Merge remote-tracking branch 'erickt/time'
...
Conflicts:
src/libstd/time.rs
2012-11-28 14:49:58 -08:00
Brian Anderson
fc06114ddf
Merge remote-tracking branch 'brson/companion' into incoming
...
Conflicts:
src/compiletest/compiletest.rs
src/libcargo/cargo.rs
src/libcore/core.rs
src/librustc/rustc.rs
src/librustdoc/rustdoc.rc
2012-11-28 13:17:33 -08:00
Brian Anderson
8179e268ef
Register snapshots
2012-11-28 12:33:00 -08:00
Patrick Walton
669fbddc44
librustc: Add explicit self to IterBytes. r=nmatsakis
2012-11-28 11:36:04 -08:00
Graydon Hoare
082a88e42c
Merge pull request #4032 from catamorphism/getopts
...
[libstd] getopts, now with fewer copies
2012-11-28 08:47:25 -08:00
Brian Anderson
b21e9d52de
core: Add Clone trait
2012-11-27 11:08:19 -08:00
Erick Tryzelaar
cd6300e938
libstd: turn time::Tm and time::Timespec into structs
...
This avoids #4044 by not using the enum wrapper, and turning Tm_
directly into a struct. Along the way it modernizes the codebase
to eliminate no-implicit-copies warnings.
2012-11-26 22:22:22 -08:00
Jesse Jones
a18f0d413c
Made Tm_ a struct instead of a record and added serialization support to Tm and Tm_.
...
Not entirely clear what the best way to do this is. Right now we persist the entire
struct which seems to be both portable and exactly round-trippable.
2012-11-26 21:49:29 -08:00
Brian Anderson
5c0206a1e4
Rename insert_with functions to update, update_with_key
2012-11-25 13:26:37 -08:00
Kevin Cantu
ff4075e553
Add improvements to insert_with_key
...
This commit adds a lower-level implementation of the generic
`insert_with_key` which I expect to be faster. Now insert could be
defined with insert_with_key, too, although I'm not sure we want to do that.
This also clarifies the tests a bit and adds an `insert_with` function.
2012-11-25 12:41:11 -08:00
Kevin Cantu
7b13ef7d50
Test insert_with_key...
2012-11-25 12:41:11 -08:00
Kevin Cantu
a343e435d5
Add an insert_with_key function to the Map trait
2012-11-25 12:41:11 -08:00
Tim Chevalier
77e5498868
Long lines
2012-11-24 13:59:21 -08:00
Tim Chevalier
ec0c029a7e
Split EBML module into a reader and a writer module
...
Minor refactoring, no review.
Closes #2739
2012-11-24 13:40:00 -08:00
Tim Chevalier
f74fe894fc
[libstd] getopts, now with fewer copies
...
Change the opt_ functions in getopts to take a reference to a
Matches, instead of taking a Matches by-value, as suggested in
2012-11-24 12:52:27 -08:00
Graydon Hoare
dc34fb9219
std: try to fix breakage.
2012-11-22 23:32:30 -08:00
Graydon Hoare
eeb584ccbd
std: initial sketch of workcache, barely does anything.
2012-11-22 18:31:12 -08:00
Erick Tryzelaar
77ef4e7176
change json::Deserializer to take a json enum
...
This allows the deserializer to be used on an already
parsed json object.
2012-11-21 11:48:16 -08:00
Erick Tryzelaar
e1a552a628
libstd: fix warnings in sort
2012-11-20 16:39:30 -08:00
Erick Tryzelaar
9539724e8b
Remove parentheses from closure argument types
2012-11-20 16:39:30 -08:00
Patrick Walton
318e534895
rustc: Implement explicit self for Eq and Ord. r=graydon
2012-11-19 15:33:11 -08:00
Brian Anderson
68c73dc5f2
Whitespace
2012-11-18 15:00:43 -08:00
Tim Chevalier
5e4ed709cb
Merge pull request #3998 from jesse99/feature/getopts
...
Added support for options that take no arguments and may be repeated.
2012-11-18 13:56:57 -08:00
Jesse Jones
361aea94f2
Fixing warnings for long and blank lines
2012-11-18 13:25:26 -08:00
Jesse Jones
333d268b3e
Made merge_sort pure
2012-11-18 13:25:26 -08:00
Jesse Jones
6d99a2f8a9
Made more stuff pure.
...
escape functions in char, io.with_str_reader, base64 and md5sum, cell.empty_cell
and is_empty.
2012-11-18 13:25:26 -08:00
Jesse Jones
15989ecb13
Made most of the URL functions pure.
...
This closes #3782 .
2012-11-18 13:25:25 -08:00
Jesse Jones
2c0dab02ad
Made the time to string functions pure as well as empty_tm.
...
This closes #3919 .
2012-11-18 13:25:25 -08:00
Jesse Jones
c58951ea7d
Replace TmMut with inherited mutability
2012-11-18 13:25:24 -08:00
Jesse Jones
a9e13586a3
Moved strptime and strftime into private helper functions.
...
Makes the public API much easier to see and prepares the way for making them pure.
2012-11-18 13:25:24 -08:00
Jesse Jones
68c852ad3a
Made Map.contains_key, contains_key_ref, and get pure.
2012-11-18 13:25:24 -08:00
Jesse Jones
340955b3a5
Added support for options that take no arguments and may be repeated.
...
Closes #3568 .
2012-11-17 19:43:39 -08:00
Tim Chevalier
9b6f025eb6
Rename thread_pool to task_pool
...
Minor change, no review.
Closes #3972
2012-11-15 12:35:14 -08:00
Brian Anderson
872cb5ee8b
std: Don't use Drop trait in thread_pool
2012-11-14 16:15:35 -08:00
Ben Striegel
4589597785
Convert libstd to use the Drop trait
2012-11-14 16:15:34 -08:00
Brian Anderson
c44c9a47d8
Revert "Convert libstd to use the Drop trait"
...
This reverts commit 28c7a25151
.
2012-11-14 14:51:16 -08:00
Ben Striegel
28c7a25151
Convert libstd to use the Drop trait
2012-11-14 12:40:44 -08:00
Graydon Hoare
4e1ce014c8
cleanup: convert some remaining #foo invocations to foo! form.
2012-11-13 08:57:31 -08:00
Brian Anderson
166c10e666
std: Eliminate copy warning
2012-11-08 17:14:02 -08:00
Brian Anderson
17020244e4
Merge pull request #3923 from am0d/master
...
Fixes issue #3891
2012-11-08 12:35:14 -08:00
a_m0d
062ac8cb97
Fix whitespace issues from previous commits.
...
Also added test for #3891 .
2012-11-07 23:49:01 -05:00
Patrick Walton
70886d314d
libstd: Implement a thread pool. r=brson
2012-11-07 12:05:41 -08:00
a_m0d
d42cf97bcc
Fix trailing whitespace issues
2012-11-06 19:16:01 -05:00
a_m0d
59a592f4c4
Add end_of_file handling to TcpBufferedSocket.
...
This fixes #3891 .
Also removed debug!(...) statement from socket destructor which causes a
crash when the logging level is set to debug.
2012-11-06 19:12:26 -05:00
Brian Anderson
9aadfc3f4b
Make std::rl unsafe. #3921
2012-11-05 11:20:44 -08:00
Brian Anderson
1b0c6665d9
Merge remote-tracking branch 'brson/repl'
...
Conflicts:
mk/install.mk
src/rt/rustrt.def.in
2012-11-04 13:42:39 -08:00
Brian Anderson
799eb105b9
Use a linenoise with win32 support
2012-11-04 13:34:14 -08:00
Zack Corr
a450119b0b
Move rusti::rl to std::rl
2012-11-04 15:40:57 +10:00
Tim Chevalier
a006608276
Remove stage0 stuff that was awaiting snapshot
...
and re-register snapshots
Just removing unneeded code, no review
2012-11-03 14:04:32 -07:00
Graydon Hoare
5e5474e895
std: disable timsort crash-test on windows.
2012-10-29 11:29:27 -07:00
Brian Anderson
c851d2a1bc
std: Fix build errors in sort
2012-10-25 15:34:20 -07:00
Brian Anderson
a9d7642b5d
Merge remote-tracking branch '14427/incoming'
...
Conflicts:
src/libstd/sort.rs
2012-10-25 14:01:49 -07:00
Simon BD
d4432a7974
Remove some unused MergeState code, add a Fixme and remove a workaround involving pure code not being considered pure
2012-10-25 11:30:41 -05:00
Simon BD
f2216ec9d0
Move binarysort out of MergeState
2012-10-24 20:42:41 -05:00
Simon BD
98c8a40828
Remove commented out code
2012-10-24 20:38:34 -05:00
Simon BD
8e6d209914
Remove and comment out more MergeState code
2012-10-24 20:36:10 -05:00
Simon BD
046460c7f6
Remove some code that MergeState used to prevent double frees
2012-10-24 19:21:39 -05:00
Simon BD
19a59cb748
Fix tests for Copy bound
2012-10-24 19:17:24 -05:00
Simon BD
fb61f915db
Add copy bound to sort
2012-10-24 19:15:11 -05:00
Brian Anderson
d29962f0eb
Move futures to std
2012-10-23 14:46:49 -07:00
Brian Anderson
3e4b2bd2b2
core: Use PortOne instead of Future in future_result
2012-10-23 14:21:15 -07:00
Tim Chevalier
11e92f37c1
Remove uses of binary move - <- - from tests and libraries
2012-10-23 12:10:03 -07:00
Simon BD
e0a9d41b04
Re-add bad Ord impl test
2012-10-22 22:04:14 -05:00
Simon BD
254a86e49e
Fix typo
2012-10-22 21:53:37 -05:00
Simon BD
781e446e26
Fix long line
2012-10-22 21:49:47 -05:00
Simon BD
1380776d36
Use explicit self
2012-10-22 21:44:43 -05:00
Simon BD
71c311cec5
Uncomment tests and fix binarysort segmentation fault
2012-10-22 21:42:09 -05:00
Simon BD
cc0f2c6bb2
Merge remote-tracking branch 'original/incoming' into incoming
2012-10-22 18:33:41 -05:00
Simon BD
9aec7a3e85
Fix up tests, export tim_sort
2012-10-22 18:33:28 -05:00
Brian Anderson
191d16265b
std: Shuffle around test ports some more
2012-10-20 18:30:19 -07:00
Brian Anderson
9980f25a02
Long lines
2012-10-20 18:06:01 -07:00
Ben Striegel
ac81fff229
Remove old fixed-length vector syntax
2012-10-20 17:50:46 -07:00
Brian Anderson
8dd8136f91
std: Use unique ports in tcp tests
2012-10-20 17:24:27 -07:00
Luqman Aden
9555ee790f
std: rename getpeername to get_peer_addr
2012-10-20 17:17:10 -07:00
Brian Anderson
781f8cbe4e
std: Add test for getpeername
2012-10-20 17:17:10 -07:00
Luqman Aden
79e538d32a
uv: use just getpeername for both ipv4 and ipv6.
2012-10-20 17:17:10 -07:00
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