Huon Wilson
efc71a8bdb
std: unify the str -> [u8] functions as 3 methods: .as_bytes() and .as_bytes_with_null[_consume]().
...
The first acts on &str and is not nul-terminated, the last two act on strings
that are always null terminated (&'static str, ~str and @str).
2013-06-12 12:21:04 +10:00
Huon Wilson
8786bca7e2
std: convert str::repeat to a method.
2013-06-12 12:21:03 +10:00
Huon Wilson
96cd61ad03
std: convert {vec,str}::to_owned to methods.
2013-06-12 12:21:03 +10:00
bors
3f900dc7d1
auto merge of #7055 : thestinger/rust/iterator, r=catamorphism
...
This was a lot more painful than just changing `x.each` to `x.iter().advance` . I ran into my old friend #5898 and had to add underscores to some method names as a temporary workaround.
The borrow checker also had other ideas because rvalues aren't handled very well yet so temporary variables had to be added. However, storing the temporary in a variable led to dynamic `@mut` failures, so those had to be wrapped in blocks except where the scope ends immediately.
Anyway, the ugliness will be fixed as the compiler issues are fixed and this change will amount to `for x.each |x|` becoming `for x.iter |x|` and making all the iterator adaptors available.
I dropped the run-pass tests for `old_iter` because there's not much point in fixing a module that's on the way out in the next week or so.
2013-06-11 16:19:42 -07:00
Daniel Micay
004816f4c6
option: remove redundant old_iter impls
2013-06-11 14:06:12 -04:00
bors
d0b1979004
auto merge of #7035 : influenza/rust/getopts-doc-update, r=bstrie
...
The documentation was still refering to getopts as though it was in the
std module - I've changed this to refer to extra instead.
2013-06-11 10:46:37 -07:00
bors
d1d855993d
auto merge of #7047 : bblum/rust/bug_triage, r=graydon
...
r? anybody
2013-06-11 09:52:40 -07:00
Huon Wilson
19c31b6b1a
extra: implement .norm(), and Polar conversion functions for complex numbers.
...
Also, convert complex to use Clone, rather than Copy.
Fixes #5734 and #5735 .
2013-06-11 11:37:33 +10:00
Kevin Ballard
8f1edd5307
terminfo: Support more terminfo directory structures
...
OS X's terminfo uses the hex representation of the first character of
the terminal name as the directory name.
Ubuntu seems to use /lib/terminfo instead of /usr/share/terminfo, at
least on the one machine I have access to.
2013-06-10 15:52:10 -07:00
Ben Blum
d25fae0e10
Remove 'this could be clearer' FIXME. Looks fine. Close #2618 .
2013-06-10 17:51:02 -04:00
Huon Wilson
e8782eeb63
fix tests, remove some warnings
2013-06-11 02:34:14 +10:00
Huon Wilson
838191c40b
std: replace str::{starts,ends}_with with the method.
2013-06-11 01:03:24 +10:00
Huon Wilson
248b6e38b5
std: replace str::substr with the method.
2013-06-11 00:52:47 +10:00
Huon Wilson
ccd0ac59e9
std: remove str::{connect,concat}*.
2013-06-10 23:57:03 +10:00
Huon Wilson
5a711ea7c3
clean-up unused import warnings
2013-06-10 23:15:01 +10:00
Huon Wilson
ec5a028ada
std: convert str::char_at* to methods.
2013-06-10 23:02:55 +10:00
Huon Wilson
f632f46614
std: convert str::trim* to methods.
2013-06-10 23:02:55 +10:00
Huon Wilson
1553874149
std: convert str::reserve* to methods, and methodise str::push_*.
2013-06-10 23:02:55 +10:00
Huon Wilson
a64e886e3c
std: remove str::contains in favour of the method
2013-06-10 23:02:55 +10:00
Huon Wilson
017450a611
std: replace str::find_str* with a method
2013-06-10 23:02:54 +10:00
Huon Wilson
7281fb948a
std: replace str::{any,all}_between with the iterator equivalent.
2013-06-10 23:02:54 +10:00
Huon Wilson
c32fb53cf9
std: remove str::{len, slice, is_empty} in favour of methods.
2013-06-10 23:02:54 +10:00
Huon Wilson
b29cd22bce
std: replace str::all/any fns and methods with iterators
2013-06-10 23:02:54 +10:00
Huon Wilson
1e8982bdb2
std: replace str::each_split* with an iterator
2013-06-10 23:02:54 +10:00
Daniel Micay
86833ea286
cmp: remove duplicate free functions
2013-06-09 20:47:40 -04:00
Ron Dahlgren
9e4beaac9d
Fix all issues with sample code
...
The getopts sample program now compiles and runs. Additionally I made
all of the indentation uniformly four spaces.
2013-06-09 16:13:52 -07:00
Ron Dahlgren
983269e71a
Updated documentation to refer to extra module
...
The documentation was still refering to getopts as though it was in the
std module - I've changed this to refer to extra instead.
2013-06-09 15:45:55 -07:00
Daniel Micay
de367157b5
remove deprecated vec::{is_empty, len} functions
2013-06-08 23:19:30 -04:00
bors
470bf0dfb3
auto merge of #7016 : thestinger/rust/ptr, r=luqmana
2013-06-08 14:31:10 -07:00
bors
878a9b92eb
auto merge of #7004 : dotdash/rust/allocs, r=thestinger
...
This removes some unnecessary allocations in the lexer, the typechecker and the metadata decoder. Reduces the time spent in the parsing and typechecking passes by about 10% for me.
2013-06-08 13:37:10 -07:00
Daniel Micay
fe3ad0a204
rm some uses of to_mut_unsafe_ptr
2013-06-08 15:02:32 -04:00
Huon Wilson
98ba91f81b
remove unused import warnings
2013-06-09 02:22:23 +10:00
Huon Wilson
00f5916809
std: replace the str::each* fns/methods with byte iterators
2013-06-09 02:22:23 +10:00
Huon Wilson
4b806b4d06
std: remove each_char* fns and methods from str, replaced by iterators.
2013-06-09 02:22:23 +10:00
Huon Wilson
ed299af625
std: remove fold[lr] in favour of iterators
2013-06-09 02:22:23 +10:00
Huon Wilson
65c7c58c8f
std: remove {all*,any*,count} in favour of iterators
2013-06-09 02:22:23 +10:00
Huon Wilson
ce4f63dcee
std: add reverse vec iterators, replace vec::each*_reverse.
2013-06-09 02:22:23 +10:00
Björn Steinbrink
2096d79626
Avoid unnecessary allocations in the metadata decoder
2013-06-08 03:27:48 +02:00
Huon Wilson
54d914a9a9
std: remove each[i]_mut functions, in favour of iterators.
2013-06-08 03:24:27 +10:00
Michael Sullivan
8bbf83b62a
Clean up a handful of build warnings.
2013-06-06 12:14:41 -07:00
Alexei Sholik
e75572c879
Deduplicate words in code comments
2013-06-06 10:48:27 +03:00
Patrick Walton
8114d0e950
librustc: Disallow multiple patterns from appearing in a "let" declaration.
...
You can still initialize multiple variables at once with "let (x, y) = (1, 2)".
2013-06-04 21:45:42 -07:00
Patrick Walton
16086ecff7
libsyntax: Remove pub impl
from the language
2013-06-04 21:45:42 -07:00
Philipp Brüschweiler
e1c1c059c6
std::io: Modernize some constructors
...
Part of #3853
2013-06-04 12:47:45 +02:00
Philipp Brüschweiler
34ee63e93b
std::cell: Modernize constructors
...
Part of #3853
2013-06-04 12:03:58 +02:00
bors
8a43b318bf
auto merge of #6826 : cmr/rust/terminfo, r=thestinger
...
This will let *everyone* (non-windows, at least) who can see colors see the glorious colors rustc produces.
2013-06-03 13:34:56 -07:00
Corey Richardson
ae5f3de5f0
Ignore tests that cannot pass on buildbot
2013-06-03 16:05:46 -04:00
Daniel Micay
454133127a
ptr: split out borrowed pointer utilities
...
The ptr module is intended to be for raw pointers.
Closes #3111
2013-06-02 19:24:33 -04:00
Corey Richardson
023861cbd1
test fixes
2013-06-01 13:24:58 -04:00
Patrick Walton
5fb254695b
Remove all uses of pub impl
. rs=style
2013-06-01 09:18:27 -07:00
Corey Richardson
11f31b9684
Fix formatting for tidy
2013-05-31 20:02:56 -04:00
Corey Richardson
5311d59023
extra::term: better error handling and win32 compat
2013-05-31 20:02:49 -04:00
Corey Richardson
100ee84097
Only output colors if colors are supported (removes burden from caller)
2013-05-31 20:02:49 -04:00
Corey Richardson
7281166961
Use find_equiv in term
2013-05-31 20:02:49 -04:00
Corey Richardson
cf64324e19
extra::term overhaul
2013-05-31 20:02:49 -04:00
bors
55c23bc557
auto merge of #6862 : thestinger/rust/swap, r=bstrie
...
I don't like the `util` module in general, and `ptr` is a much better place for these.
2013-05-31 15:22:45 -07:00
bors
91a7073900
auto merge of #6857 : alexcrichton/rust/ebml-fixes, r=pcwalton
...
Also provides a method of serializing `char`.
2013-05-31 11:34:46 -07:00
Daniel Micay
29aba8033a
mv the raw pointer {swap,replace}_ptr to std::ptr
2013-05-31 10:31:26 -04:00
bors
1dd5cd9731
auto merge of #6833 : fdr/rust/fix-warnings, r=Aatch
...
Fix a laundry list of warnings involving unused imports that glutted
up compilation output. There are more, but there seems to be some
false positives (where 'remedy' appears to break the build), but this
particular set of fixes seems safe.
2013-05-31 00:43:45 -07:00
Alex Crichton
e86ac24e7b
Implement unimplemented methods in ebml
2013-05-31 00:28:17 -05:00
Daniel Farina
aef1e10eba
Remove unnecessary 'use' forms
...
Fix a laundry list of warnings involving unused imports that glutted
up compilation output. There are more, but there seems to be some
false positives (where 'remedy' appears to break the build), but this
particular set of fixes seems safe.
2013-05-30 13:08:18 -07:00
Niko Matsakis
7a1a40890d
Remove copy bindings from patterns.
2013-05-30 15:20:36 -04:00
Björn Steinbrink
1720d9f663
Remove a bunch of unnecessary allocations and copies
2013-05-30 11:49:04 +02:00
Alex Crichton
395685079a
libextra: Require documentation by default
2013-05-30 01:03:15 -05:00
James Miller
3a3bf8bdef
Remove all of the #[inline(always)]
attributes from bigint
2013-05-29 22:21:55 -07:00
Patrick Walton
206ab89629
librustc: Stop reexporting the standard modules from prelude.
2013-05-29 19:04:53 -07:00
Patrick Walton
aeda178011
librustc: Redo the unsafe checker and make unsafe methods not callable from safe code
2013-05-29 19:04:50 -07:00
Steven Fackler
b1e7d49b11
Generalized implementation of FromBase64
...
Previously, FromBase64 was only implemented on ~[u8] and ~str when
any pointer would do. The implementations of FromBase64 are now
consistent with the implementations of ToBase64.
2013-05-28 18:41:05 -07:00
bors
5676056ae6
auto merge of #6775 : yjh0502/rust/issue_6696, r=catamorphism
2013-05-28 15:40:53 -07:00
Alex Crichton
b04c40bb1c
Silence various warnings throughout test modules
2013-05-28 15:27:35 -05:00
bors
24784e8030
auto merge of #6771 : thestinger/rust/highlight, r=luqmana
...
This works with pandoc linked against highlighting-kate >= 0.5.3.8. It seems to just be a no-op with earlier versions, because I successfully ran this through `try`.
This also fixes some consistency issues (like making `Example`/`Examples` always a header and always using three tildes).
2013-05-28 04:02:02 -07:00
bors
fe7f528e5d
auto merge of #6769 : catamorphism/rust/issue-4994, r=thestinger
...
r? @thestinger As called for in #4994
2013-05-28 00:44:05 -07:00
bors
f7f36a8373
auto merge of #6766 : fdr/rust/time-by-value, r=catamorphism
...
Per the recommendation of the now-removed FIXME.
2013-05-27 23:41:19 -07:00
Jihyun Yu
4521c34775
Fix #6696
2013-05-28 12:35:06 +09:00
bors
b0f3686515
auto merge of #6703 : sanxiyn/rust/allocation-lint, r=sanxiyn
...
Fix #6145 . In particular, handle operator overloading.
2013-05-27 12:38:12 -07:00
Tim Chevalier
77de84b4f6
extra: Add reserve and reserve_at_least to extra::deque
...
As called for in #4994
2013-05-27 11:47:38 -07:00
Daniel Micay
0d5fdce82e
syntax highlight code examples in docstrings
2013-05-27 14:47:21 -04:00
Seo Sanghyeon
8f80323f09
Remove unnecessary allocations flagged by lint
2013-05-28 03:14:44 +09:00
Lindsey Kuper
beec6e4b21
Get rid of no-longer-needed #[doc(hidden)] attributes.
...
There were several old `#[doc(hidden)]` attributes in libstd and
libextra, left over from when rustdoc didn't hide private
definitions, tagged with `FIXME #3538`.
Since #3538 is now closed, I removed the `#[doc(hidden)]` attributes
as well as the FIXMEs, but I left `#[doc(hidden)]` in
libstd/task/spawn.rs and libstd/task/rt.rs since those two are
apparently `pub`, as well as in libextra/std.rc since std/extra is
`pub`.
2013-05-27 13:29:48 -04:00
Daniel Farina
c6f3577f72
Increment copyright year of time.rs
2013-05-27 10:02:48 -07:00
Daniel Farina
379460558b
Use passing by-value in gmtime, mktime
...
Per the recommendation of the now-removed FIXME.
2013-05-27 10:02:48 -07:00
gareth
76c31217be
Refactor core::run in order to address many of the issues
...
mentioned in #2625 .
This change makes the module more oriented around
Process values instead of having to deal with process ids
directly.
Apart from issues mentioned in #2625 , other changes include:
- Changing the naming to be more consistent - Process/process
is now used instead of a mixture of Program/program and
Process/process.
- More docs/tests.
Some io/scheduler related issues remain (mentioned in #2625 ).
2013-05-27 13:50:33 +01:00
Olivier Saut
ff28bb7839
Remove the clone function for the method
2013-05-24 22:54:58 +02:00
Olivier Saut
f2125434d8
Remove the get function
...
Rust is now preferring methods over functions and there is no legacy with ARC
2013-05-24 22:51:24 +02:00
Erick Tryzelaar
609a9e69e1
cleanup warnings from libextra
2013-05-23 17:57:06 -07:00
Patrick Walton
6e2b082adc
libextra: Add missing core::prelude import. rs=burningtree
2013-05-23 08:33:30 -07:00
Patrick Walton
a5ca58ae34
libextra: Allow unnecessary allocations
2013-05-22 21:57:11 -07:00
Patrick Walton
3a66d732bb
libsyntax: Fix more merge fallout.
2013-05-22 21:57:11 -07:00
Patrick Walton
ee52865c88
test: Update tests and import the prelude in some more places.
2013-05-22 21:57:10 -07:00
Patrick Walton
c10e0cb9c9
syntax: Change syntax extensions to expand to std::foo
instead of core::foo
2013-05-22 21:57:08 -07:00
Patrick Walton
c532e033c9
librustc: Change std
to extra
throughout libsyntax and librustc
2013-05-22 21:57:08 -07:00
Patrick Walton
f3723cf7c4
libextra: Rename the actual metadata names of libcore to libstd and libstd to libextra
2013-05-22 21:57:07 -07:00
Patrick Walton
0c820d4123
libstd: Rename libcore to libstd and libstd to libextra; update makefiles.
...
This only changes the directory names; it does not change the "real"
metadata names.
2013-05-22 21:57:05 -07:00