Commit Graph

18244 Commits

Author SHA1 Message Date
Daniel Micay
75822f2894 add a DeepClone trait
for deep copies through shared ownership boundaries
2013-05-15 01:36:41 -04:00
bors
31cedf6927 auto merge of #6478 : dotdash/rust/inlining, r=catamorphism
Not inlining these affects the hash table performance quite badly.
2013-05-14 22:00:01 -07:00
Daniel Micay
fa45958ec8 clone: clarify docstring 2013-05-15 00:42:52 -04:00
Daniel Micay
298a72602b vim: be is still a reserved keyword 2013-05-15 00:03:55 -04:00
Daniel Micay
d65a136cb0 vim: no more drop blocks 2013-05-15 00:01:58 -04:00
Daniel Micay
17a68d1e8d vim: swap operator is gone 2013-05-14 23:59:55 -04:00
Brian Anderson
5af8646a8b core: Fix leak in TLS. #6231 2013-05-14 20:50:43 -07:00
Erick Tryzelaar
729708d112 rustc: rename ty::method to ty::Method and add ctor 2013-05-14 20:10:46 -07:00
Erick Tryzelaar
18f6a51d0a rustc: rename ast::self_ty and related fields to explicit_self 2013-05-14 20:10:46 -07:00
Erick Tryzelaar
70e02cf445 rustc: rename a method receiver type to rcvr_ty 2013-05-14 20:10:46 -07:00
Erick Tryzelaar
8d19f44c9d syntax: add IterBytes impls for some ast types 2013-05-14 20:10:46 -07:00
Erick Tryzelaar
4bfe0f717f rustc: rename some ty_self variables to self_arg 2013-05-14 20:10:45 -07:00
Erick Tryzelaar
9c80cf548a rustc: Remove ty::arg 2013-05-14 20:10:45 -07:00
Erick Tryzelaar
191fdda46a rustc: minor cleanup 2013-05-14 20:10:45 -07:00
Brian Anderson
2d35c01a28 rusti: Ignore tests. Failing on i686. #6489 2013-05-14 19:11:57 -07:00
bors
2fc6b0998b auto merge of #6475 : sonwow/rust/tutorials, r=brson 2013-05-14 19:08:19 -07:00
Brian Anderson
6a6076ae81 core::rt: Ignore tcp test multiple_connect_interleaved_lazy_schedule
Hangs on mac.
2013-05-14 19:06:22 -07:00
Youngmin Yoo
a2a8596c3d Rename vec::len(var) to var.len() 2013-05-15 11:05:28 +09:00
Tim Chevalier
80a7e2644c rustpkg: Tests for well-formed and ill-formed package IDs...
...and cleanup, making how we handle version numbers more rational
(specifically, not passing in a versioned name to rustc
with the -o flag), and removing unused code.
2013-05-14 18:13:45 -07:00
bors
cf0f760560 auto merge of #6333 : bjz/rust/cond-macro, r=thestinger
Addressing issue #6037, this Scheme-style conditional helps to improve code clarity in instances where the `if`, `else if`, and `else` keywords obscure predicates undesirably.

Here is an example:

~~~rust
let clamped =
    if x > mx { mx }
    else if x < mn { mn }
    else { x };
~~~

Using `cond!`, the above could be written as:

~~~rust
let clamped = cond!(
    (x > mx) { mx }
    (x < mn) { mn }
    _        { x  }
);
~~~

The optional default case is denoted by `_`.

I have altered `std::fun_treemap` to demonstrate it in use. I am definitely interested in using it for some of the numeric functions, but I will have to wait for it to reach `stage0` first.
2013-05-14 18:11:00 -07:00
Brendan Zabarauskas
7e4a176dd3 Use parentheses for cond! macro instead of preceding pipes
This is temporary. Once the macro parser has improved or been re-written these can be removed.
2013-05-15 11:02:17 +10:00
Tim Chevalier
c3875e8c70 rustpkg: Implement URL-like package IDs
This patch implements package IDs like
github.com/catamorphism/test-pkg.

To support such package IDs, I changed the PkgId struct to contain
a LocalPath and a RemotePath field, where the RemotePath reflects
the actual URL and the LocalPath reflects the file name of the cached
copy. Right now, the only difference is that the local path doesn't
contain dashes, but this will change when we implement #6407.

Also, PkgIds now have a short_name field -- though the short name
can be derived from the LocalPath, I thought it was cleaner not to
call option::get() wantonly.
2013-05-14 17:47:39 -07:00
Corey Richardson
68863153bb Fix resolution tests 2013-05-14 20:34:12 -04:00
Corey Richardson
8a69dba84a Fix ICE 2013-05-14 20:34:05 -04:00
Corey Richardson
3bfc1ca91d Get span from import_directive 2013-05-14 19:28:28 -04:00
Corey Richardson
62cbea1ca1 Add span to some import resolution errors 2013-05-14 18:52:31 -04:00
Corey Richardson
52f8b22d4f Add test for resolution errors 2013-05-14 18:51:37 -04:00
Corey Richardson
03f75b629a Better error reporting with renaming imports 2013-05-14 18:51:36 -04:00
Brian Anderson
b04fce6a90 Merge remote-tracking branch 'brson/io-upstream' into incoming
Conflicts:
	src/libcore/logging.rs
	src/libcore/rt/local_services.rs
	src/libcore/rt/uv/mod.rs
	src/libcore/rt/uv/net.rs
	src/libcore/rt/uv/uvio.rs
	src/libcore/unstable.rs
2013-05-14 15:30:01 -07:00
bors
c30414f980 auto merge of #6471 : gifnksm/rust/reform-rational, r=brson
`std::ratio` module contains `BigRational` type, but the type is not usable by following reasons.
* `Ratio::new` requires `T: Copy + Num + Ord`, but `BigInt` is not implicitly copyable, because it contains unique vector.
* `BigInt` is not implements `Num`

So, I rewrite `Ratio` as follows.
* `Ratio` requires `T: Clone + Integer + Ord`.
  * `Copy` -> `Clone`: to be able to use `BigRational`
  * `Num` -> `Integer`: It is incorrect that a rational number constructed by two non-integer numbers.
* `BigInt` implements `Num` and `Orderable` which are required by `Integer` bound
2013-05-14 15:28:59 -07:00
Brian Anderson
ee0ce64d9d core::rt: Wait for handles to close 2013-05-14 14:52:07 -07:00
Brian Anderson
204e3d82cc core::rt: Register stacks with valgrind. #6428 2013-05-14 14:52:07 -07:00
Brian Anderson
f934fa73ac core::rt: Docs 2013-05-14 14:52:07 -07:00
Brian Anderson
329dfcaba0 core: Move unstable::exchange_alloc to rt::global_heap 2013-05-14 14:52:07 -07:00
Brian Anderson
52f015aceb core: Cleanup warnings 2013-05-14 14:52:07 -07:00
Brian Anderson
4472a50ceb rtdebug off 2013-05-14 14:52:07 -07:00
Brian Anderson
101aaa3861 core::rt: 0 is a valid TLS key 2013-05-14 14:52:06 -07:00
Brian Anderson
d234cf7e44 core::rt: Make TCP servers work 2013-05-14 14:52:06 -07:00
Brian Anderson
414f3c7d25 core::rt: Add a simple channel type for passing buffered messages between Scheduler and Task
Called 'Tube' for lack of anything better.
2013-05-14 14:52:06 -07:00
Brian Anderson
40a9de5ebc core::rt: Add a very simple ref counted pointer 2013-05-14 14:52:06 -07:00
Brian Anderson
936fce5515 Warnings 2013-05-14 14:52:06 -07:00
Brian Anderson
272c3c2cfb Tidy 2013-05-14 14:52:06 -07:00
Brian Anderson
10355d7a7d core::rt Wire up logging to newsched tasks 2013-05-14 14:52:06 -07:00
Brian Anderson
ad6719ee0b core::rt: Just a small fix to TcpStream 2013-05-14 14:52:06 -07:00
Brian Anderson
a134503d74 core::rt: Move all the uv callback definitions to one place 2013-05-14 14:52:06 -07:00
Brian Anderson
dbf89664aa core::rt: Move the implementation of IdleWatcher to its own file 2013-05-14 14:52:06 -07:00
Brian Anderson
9138feab15 core::rt: Only use one mechanism for attaching custom data to uv handles 2013-05-14 14:52:06 -07:00
Brian Anderson
91ca3a9b29 core::rt: Reording code 2013-05-14 14:52:05 -07:00
Brian Anderson
6ab02c03da core::rt: Convert some uv functions to extension methods 2013-05-14 14:52:05 -07:00
Brian Anderson
cfd183db15 core::rt: Fix some copies in uv 2013-05-14 14:52:05 -07:00