Jeff Olson
733881d852
std: tightening up net::tcp, server/client test done, still has races..
...
.. going to rework the listen() API to be non-blocking.
2012-05-22 22:29:16 -07:00
Jeff Olson
a4127d3fc6
std: change sig of uv::ll::accept, again.
2012-05-22 22:29:16 -07:00
Jeff Olson
465412aeff
std: first-pass at a tcp server API, with a basic (non-robust) test
...
also whitespace cleanup
.. for now, the test just spins up the server and listens for messages,
echoing them back to an output port. there's a "kill" msg that it will
listen for. need to point the tcp client and server test impls at each
other for a loopback server/client test, like how its done in uv::ll
once ipv6 parse/format lands, i can add another test using the entirely
same codebase, but substituting an ip_addr ipv6 varient for the ipv4
varient used in the existing code
still need some other plumbing to get the client/server tests to work
together.
2012-05-22 22:29:16 -07:00
Jeff Olson
f2fd3bcf17
std: FIXME stub net::ip::ip_addr::ipv6 variant...needs parse/format impl
...
still need implementation for parsing/output formatting and (perhaps?)
representation (for now, i just followef the ipv4 variant's lead and
am representing it as a tuple of 8x u16).
parsing an ipv6 addr is way more complex than parsing an ipv4 addr, so
i'm putting off an implementation here, for now.
candidate solutions:
- could use getaddrinfo() (exists on both POSIX and windows), but with
incompatible fn signatures.
- libuv has a way to parse an ipv6 string into
a sockaddr_in6, but it also requires a port, so it's probably not aprop
for ip_addr
2012-05-22 22:29:16 -07:00
Jeff Olson
64048d43d6
std: makeing uv::ll::listen/accept use generic params for ptr args
...
more flexibility..
2012-05-22 22:29:16 -07:00
Jeff Olson
83cca50240
std: change tcp_*_result to use result::result.. flatter!
2012-05-22 22:29:16 -07:00
Jeff Olson
082a95a077
core: add result::unwrap() .. patch from @nmatsakis
2012-05-22 22:29:16 -07:00
Jeff Olson
3d8f7d644b
std: no longer return uv::ll::err_data records from net::tcp
...
they're changed into a net::tcp::tcp_err_data record, for now. once the
scope of possible tcp errors, from libuv, is established ill create an
err type for each one and return those where they might occur
2012-05-22 22:29:16 -07:00
Jeff Olson
565c5d694a
std: impl for high-level tcp client/request workflow
2012-05-22 22:29:16 -07:00
Jeff Olson
7e114b200a
std: impl of net::tcp::write and make net::tcp::tcp_socket a resource
2012-05-22 22:29:16 -07:00
Jeff Olson
5590dfc857
std: tweak uv::ll::write signature and make it generic/more flexible
2012-05-22 22:29:16 -07:00
Jeff Olson
550b34b782
std: impl for net::tcp::connect
2012-05-22 22:29:15 -07:00
Jeff Olson
bc846ce7e3
std: export net::ip::format_addr
2012-05-22 22:29:15 -07:00
Jeff Olson
08b3048c43
std: misc cleanup for uv::ll
...
* tweaked the layout of sockaddr_in6 struct in anticipation of future use
* changed several uv:ll fn signatures to use generics and be more flexible
with ptr types they get passed
* add uv_err_data and a help fn to return it.. packages up err_name and
err_msg info from uv_get_last_error() stuff..
2012-05-22 22:29:15 -07:00
Jeff Olson
d99b7bcb2f
std: pushing existing code in net.rs -> net_ip.rs and re-import/exporting
2012-05-22 22:29:15 -07:00
Jeff Olson
ffdaf14dd9
initial stab at API for std::net::tcp
2012-05-22 22:29:15 -07:00
Brian Anderson
27427a950a
Merge pull request #2430 from mmeyerho/master
...
Added support for #! comments. Closes issue 1772.
2012-05-22 20:39:53 -07:00
Tim Chevalier
ed357af980
Convert more resource tests to use classes with dtors
...
And monomorphize dtors correctly.
2012-05-22 22:12:18 -04:00
Margaret Meyerhofer
4f10c19215
Merge branch 'master' of git://github.com/mozilla/rust
2012-05-22 18:23:32 -07:00
Brian Anderson
8caf1403be
bench: Reduce some constants to make graph500-bfs faster
2012-05-22 18:20:23 -07:00
Margaret Meyerhofer
507b8e5ae0
cleaned up debugging code
2012-05-22 18:13:24 -07:00
Brian Anderson
c0a36b71be
rustc: Eliminate metadata's dependency on session
2012-05-22 18:07:36 -07:00
Brian Anderson
98b93b6c86
rustc: Eliminate some session deps from metadata::loader
2012-05-22 18:07:36 -07:00
Brian Anderson
c90a047016
rustc: Don't fall back to static libraries when shared isn't found
...
Nothing on Earth depends on this functionality and it is probably unexpected
2012-05-22 18:07:36 -07:00
Brian Anderson
5b4ab93017
rustc: Add cstore to ty::ctxt so csearch can get at it
2012-05-22 18:07:36 -07:00
Brian Anderson
99c1b2953d
syntax: Add diagnostic::expect
2012-05-22 18:07:36 -07:00
Margaret Meyerhofer
6077647878
Added a test for #! comments
2012-05-22 18:03:26 -07:00
Brian Anderson
a32392d032
Merge pull request #2427 from msullivan/shifts
...
Get rid of the >>> operator and make >> logical or arithmetic depending ...
2012-05-22 17:50:04 -07:00
Margaret Meyerhofer
3177286a24
Changed the pretty printer also read #! comments
2012-05-22 17:49:16 -07:00
Margaret Meyerhofer
f1cea3ce21
Changed the lexer to accept #! comments on the first line.
2012-05-22 17:27:20 -07:00
Michael Sullivan
2a9bf0959b
Add a test for Issue #2428 .
2012-05-22 16:35:10 -07:00
Eric Holk
037a166ea7
Updating pbfs for new kind rules.
2012-05-22 15:51:11 -07:00
Eric Holk
b62d92c993
Removed accidental machine size dependencies.
2012-05-22 15:31:39 -07:00
Eric Holk
44bea03614
Updating bfs to work with the new random methods.
2012-05-22 15:31:39 -07:00
Eric Holk
24431520bf
Removing par.rs, since it's not usable now anyway.
2012-05-22 15:31:39 -07:00
Eric Holk
5a4e2ae706
More unsafe pointers to share immutable structures between tasks. This version has a 2.8 to 3x speedup!
2012-05-22 15:31:39 -07:00
Eric Holk
7f05f088c7
Be less careful about checking that lengths make sense, for slightly more performance.
2012-05-22 15:31:39 -07:00
Eric Holk
77f6099606
Using unsafe pointers to views to try to reduce some vector copy and allocation time. Doesn't seem to have made much difference.
2012-05-22 15:31:39 -07:00
Eric Holk
ea889742d7
Using unsafe pointers to share closures.
...
This prevents the tons of copying problems we were having before, which means we only have a 5x slowdown now.
2012-05-22 15:31:39 -07:00
Eric Holk
65abe2c6dc
Using libstd future instead.
...
Turning off sequential versions for tracing.
2012-05-22 15:31:38 -07:00
Eric Holk
cba2761cc4
A new version of the sequential BFS. This uses the same approach as the parallel one, but without using the parallel vector oeprators.
2012-05-22 15:31:38 -07:00
Eric Holk
4312fa44b9
BFS now tries a number of search keys.
2012-05-22 15:31:38 -07:00
Eric Holk
a79f5174ea
A parallel BFS.
2012-05-22 15:31:38 -07:00
Eric Holk
a785f3fc95
Adding a module with parallel vector operations.
...
This should go in libstd, but currently resolve bugs make this not
work.
2012-05-22 15:31:38 -07:00
Eric Holk
d485f23a1a
Added most of the Graph500 validation routine. It's very slow.
2012-05-22 15:31:38 -07:00
Eric Holk
f5b9ebffa0
Starting on a BFS benchmark, but ran into problems with the deque module, so I used ports and channels as a queue in the simple sequential algorithm.
2012-05-22 15:31:38 -07:00
Michael Sullivan
15cef374b9
Get rid of the >>> operator and make >> logical or arithmetic depending on the signedness. Closes #2417 .
2012-05-22 14:59:15 -07:00
Eric Holk
0b2f2cabbe
Send is no longer a subkind of copy. This allows for sendable, but non-copyable resources. Closes #2420 .
2012-05-22 14:10:32 -07:00
Eric Holk
f213c1f3a8
Represent kinds as a bitfield of capabilities.
2012-05-22 12:48:31 -07:00
Michael Sullivan
8d7f3bd1ca
Disallow type parameters to self. Closes #2422 .
2012-05-22 11:52:22 -07:00