Alex Crichton
0c30293886
core: Inherit what's possible from the num module
...
This strips out all string-related functionality from the num module. The
inherited functionality is all that will be implemented in libcore (for now).
Primarily, libcore will not implement the Float trait or any string-related
functionality.
It may be possible to migrate string parsing functionality into libcore in the
future, but for now it will remain in libstd.
All functionality in core::num is reexported in std::num.
2014-05-07 08:15:58 -07:00
Alex Crichton
c5229e5d2e
core: Inhert ~/@/& cmp traits, remove old modules
...
This commit removes the std::{managed, reference} modules. The modules serve
essentially no purpose, and the only free function removed was `managed::ptr_eq`
which can be achieved by comparing references.
[breaking-change]
2014-05-07 08:15:58 -07:00
Alex Crichton
5592a8f5db
core: Inherit the cmp module
...
This removes the TotalOrd and TotalEq implementation macros, they will be added
later to the numeric modules (where the other comparison implementations live).
2014-05-07 08:15:19 -07:00
Alex Crichton
b024ba544c
core: Inherit the iter module
2014-05-07 08:14:56 -07:00
Alex Crichton
06fcb6b1c8
core: Inherit the option module
2014-05-07 08:14:56 -07:00
Alex Crichton
6636215a44
core: Inherit the bool module
2014-05-07 08:14:56 -07:00
Alex Crichton
92095d125a
core: Inherit the tuple module
2014-05-07 08:14:54 -07:00
Alex Crichton
1a989d6769
core: Bring clone tests up to date in style
2014-05-07 08:14:26 -07:00
Alex Crichton
54b81997f3
core: Inherit the clone module
2014-05-07 08:13:56 -07:00
Alex Crichton
e7eed5f670
core: Inherit the unit module
2014-05-07 08:13:56 -07:00
Alex Crichton
dfd967f239
core: Inherit the default module
2014-05-07 08:13:56 -07:00
Alex Crichton
17cb238ee8
core: Inherit the raw module
2014-05-07 08:13:56 -07:00
Alex Crichton
8ed728babb
core: Inherit the any module
2014-05-07 08:13:56 -07:00
Alex Crichton
85a8e6b80a
core: Inherit the finally module
2014-05-07 08:13:24 -07:00
Alex Crichton
7192452545
core: Inherit the char module
2014-05-07 08:13:24 -07:00
Alex Crichton
d9708539af
core: Inherit the container module
2014-05-07 08:13:24 -07:00
Alex Crichton
2ad98fbb27
core: Inherit the ty module
2014-05-07 08:13:24 -07:00
Alex Crichton
ead6e16a60
core: Inherit the ops module
2014-05-07 08:13:06 -07:00
Alex Crichton
ec8a805b6d
core: Inherit the kinds module
2014-05-07 08:13:06 -07:00
Alex Crichton
28624661c3
core: Inherit the cast module
2014-05-07 08:13:06 -07:00
Alex Crichton
645b157564
core: Inherit the ptr module
2014-05-07 08:13:06 -07:00
Alex Crichton
dca8a0d6e4
core: Inherit the mem module
2014-05-07 08:12:48 -07:00
Alex Crichton
5b75e44fb0
core: Inherit the intrinsics module
2014-05-07 08:12:48 -07:00
Alex Crichton
836d4b96a9
mk: Add libcore
2014-05-07 08:12:48 -07:00
Patrick Walton
18df18c817
libstd: Fix merge fallout.
2013-05-22 21:57:11 -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
Jyun-Yan You
499b02213d
fix arm stack alignment
2013-05-22 08:49:16 +08:00
bors
dc7b83d186
auto merge of #6650 : crabtw/rust/mips-rt, r=sanxiyn
...
Results of libcore and libstd tests
```
failures:
rand::tests::test_rng_seeded_custom_seed2
time::tests::run_tests
uv_ll::test::test_uv_ll_struct_size_addrinfo
uv_ll::test::test_uv_ll_struct_size_uv_timer_t
segfaults:
stackwalk::test_simple
stackwalk::test_simple_deep
```
2013-05-21 03:01:17 -07:00
bors
329d8e2622
auto merge of #6648 : alexcrichton/rust/issue-6633, r=graydon
...
Resolves #6633 and removes an unnecessary import in libcore
2013-05-21 01:04:16 -07:00
bors
5a3e320514
auto merge of #6647 : alexcrichton/rust/unnecessary-alloc, r=graydon
...
This adds a lint mode for detecting unnecessary allocations on the heap. This isn't super fancy, currently it only has two rules
1. For a function's arguments, if you allocate a `[~|@]str` literal, when the type of the argument is a `&str`, emit a warning.
2. For the same case, emit warnings for boxed vectors when slices are required.
After adding the lint, I rampaged through the libraries and removed all the unnecessary allocations I could find.
2013-05-20 23:55:20 -07:00
bors
d49a9dbc7f
auto merge of #6646 : dotdash/rust/method_lookup, r=brson
2013-05-20 22:52:22 -07:00
bors
7abcc142e5
auto merge of #6626 : brson/rust/io-upstream, r=graydon
...
r?
Mostly refactoring, and adding some of the remaining types described in #4419 .
The [`Local`](3b4ff41511/src/libcore/rt/local.rs (L17)
) trait collects some common, often unsafe patterns around task-local and thread-local values. Making all these types safe is largely the aim of #6210 .
2013-05-20 21:40:27 -07:00
Jyun-Yan You
d86a32bbb2
fix mips stack alignment
2013-05-21 11:58:30 +08:00
bors
adaae45c3e
auto merge of #6604 : bjz/rust/ptr-to-option, r=brson
2013-05-20 20:31:26 -07:00
bors
24609675eb
auto merge of #6528 : brson/rust/docs, r=brson
...
Remove the uncommon term 'object tree' in favor of 'value'.
2013-05-20 16:55:36 -07:00
Brian Anderson
a246e8faf3
core::rt: Convert unsafe_borrow_io to a Local impl
2013-05-20 15:21:29 -07:00
Brian Anderson
2042696236
core::rt: Implement Local for Task
2013-05-20 15:21:29 -07:00
Brian Anderson
2f99fb8efa
core::rt: Remove local_sched module
2013-05-20 15:21:29 -07:00
Brian Anderson
06f1a64bd6
core::rt: Convert users of local_sched to Local trait
2013-05-20 15:21:09 -07:00
Brian Anderson
18fab45aab
core::rt: Make local_sched a wrapper around Local
2013-05-20 15:20:50 -07:00
Brian Anderson
71aa6b6631
core::rt: Move more TLS functionality into local_ptr
2013-05-20 15:20:50 -07:00
Brian Anderson
97c2fd1a96
core::rt: Move some TLS functions from local_sched to local_ptr
2013-05-20 15:20:50 -07:00
Brian Anderson
86ba457349
rt: Rename rust_initialize_global_state to rust_initialize_rt_tls_key
2013-05-20 15:20:50 -07:00
Brian Anderson
f59fcd5d5f
core::rt: Store Task as a ~ pointer
2013-05-20 15:20:50 -07:00
Brian Anderson
43c6f32ece
core::rt: Add Local trait
2013-05-20 15:20:50 -07:00
Brian Anderson
b0722c55f8
core:rt:: Rename LocalServices to Task
2013-05-20 15:20:49 -07:00
Brian Anderson
fa18a861fb
core::rt: Queues MessageQueue and WorkQueue are cloneable
2013-05-20 15:20:49 -07:00
Brian Anderson
d2a1378ed8
core::rt: Add MessageQueue type
...
This is the queue used to send messages to Schedulers
2013-05-20 15:20:49 -07:00
Brian Anderson
ee06ed2bfd
core::rt: Put a lock on the work queue
2013-05-20 15:20:49 -07:00
Brian Anderson
f03c9bd08c
core::rt: Rename WorkQueue methods, remove extra push method
2013-05-20 15:20:49 -07:00