From 047f629b31e1af929923b54239d83059263d995b Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Wed, 11 Apr 2012 05:53:23 -0700 Subject: [PATCH 1/4] Remove some dead code. --- src/cargo/cargo.rs | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/cargo/cargo.rs b/src/cargo/cargo.rs index a53e863f289..aeb272d6b26 100644 --- a/src/cargo/cargo.rs +++ b/src/cargo/cargo.rs @@ -18,13 +18,7 @@ import vec; import std::getopts; import getopts::{optflag, optopt, opt_present}; -enum _src { - /* Break cycles in package <-> source */ - _source(source), -} - type package = { -// source: _src, name: str, uuid: str, url: str, @@ -293,7 +287,6 @@ fn load_one_source_package(&src: source, p: map::hashmap) { }; vec::grow(src.packages, 1u, { - // source: _source(src), name: name, uuid: uuid, url: url, From e7ca3e4db02d7d87dd7a2172394e08fbb92b8fb2 Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Fri, 13 Apr 2012 17:33:02 -0700 Subject: [PATCH 2/4] expose tzset --- src/libstd/time.rs | 17 +++++++++++++++++ src/rt/rust_builtin.cpp | 6 +++++- src/rt/rustrt.def.in | 1 + 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/libstd/time.rs b/src/libstd/time.rs index 093e060024b..2c7902c63e9 100644 --- a/src/libstd/time.rs +++ b/src/libstd/time.rs @@ -7,6 +7,7 @@ export get_time, precise_time_ns, precise_time_s, + tzset, tm, empty_tm, now, @@ -20,6 +21,7 @@ native mod rustrt { fn get_time(&sec: i64, &nsec: i32); fn precise_time_ns(&ns: u64); + fn rust_tzset(); // FIXME: The i64 values can be passed by-val when #2064 is fixed. fn rust_gmtime(&&sec: i64, &&nsec: i32, &&result: tm); fn rust_localtime(&&sec: i64, &&nsec: i32, &&result: tm); @@ -59,6 +61,10 @@ fn precise_time_s() -> float { ret (precise_time_ns() as float) / 1000000000.; } +fn tzset() { + rustrt::rust_tzset(); +} + type tm = { tm_sec: i32, // seconds after the minute [0-60] tm_min: i32, // minutes after the hour [0-59] @@ -869,6 +875,7 @@ mod tests { #[test] fn test_at_utc() { os::setenv("TZ", "America/Los_Angeles"); + tzset(); let time = { sec: 1234567890_i64, nsec: 54321_i32 }; let utc = at_utc(time); @@ -890,10 +897,13 @@ mod tests { #[test] fn test_at() { os::setenv("TZ", "America/Los_Angeles"); + tzset(); let time = { sec: 1234567890_i64, nsec: 54321_i32 }; let local = at(time); + #error("time_at: %?", local); + assert local.tm_sec == 30_i32; assert local.tm_min == 31_i32; assert local.tm_hour == 15_i32; @@ -916,6 +926,7 @@ mod tests { #[test] fn test_to_timespec() { os::setenv("TZ", "America/Los_Angeles"); + tzset(); let time = { sec: 1234567890_i64, nsec: 54321_i32 }; let utc = at_utc(time); @@ -927,6 +938,7 @@ mod tests { #[test] fn test_conversions() { os::setenv("TZ", "America/Los_Angeles"); + tzset(); let time = { sec: 1234567890_i64, nsec: 54321_i32 }; let utc = at_utc(time); @@ -943,6 +955,7 @@ mod tests { #[test] fn test_strptime() { os::setenv("TZ", "America/Los_Angeles"); + tzset(); alt strptime("", "") { ok(tm) { @@ -1088,11 +1101,14 @@ mod tests { #[test] fn test_ctime() { os::setenv("TZ", "America/Los_Angeles"); + tzset(); let time = { sec: 1234567890_i64, nsec: 54321_i32 }; let utc = at_utc(time); let local = at(time); + #error("test_ctime: %? %?", utc.ctime(), local.ctime()); + assert utc.ctime() == "Fri Feb 13 23:31:30 2009"; assert local.ctime() == "Fri Feb 13 15:31:30 2009"; } @@ -1100,6 +1116,7 @@ mod tests { #[test] fn test_strftime() { os::setenv("TZ", "America/Los_Angeles"); + tzset(); let time = { sec: 1234567890_i64, nsec: 54321_i32 }; let utc = at_utc(time); diff --git a/src/rt/rust_builtin.cpp b/src/rt/rust_builtin.cpp index 8f5c3c6fa14..aa7597f6a26 100644 --- a/src/rt/rust_builtin.cpp +++ b/src/rt/rust_builtin.cpp @@ -529,6 +529,11 @@ struct tm* LOCALTIME(const time_t *clock, tm *result) { #define TIMEGM(result) timegm(result) #endif +extern "C" CDECL void +rust_tzset() { + TZSET(); +} + extern "C" CDECL void rust_gmtime(int64_t *sec, int32_t *nsec, rust_tm *timeptr) { tm tm; @@ -541,7 +546,6 @@ rust_gmtime(int64_t *sec, int32_t *nsec, rust_tm *timeptr) { extern "C" CDECL void rust_localtime(int64_t *sec, int32_t *nsec, rust_tm *timeptr) { tm tm; - TZSET(); time_t s = *sec; LOCALTIME(&s, &tm); diff --git a/src/rt/rustrt.def.in b/src/rt/rustrt.def.in index ed7fb146928..6cf024a7dee 100644 --- a/src/rt/rustrt.def.in +++ b/src/rt/rustrt.def.in @@ -12,6 +12,7 @@ debug_abi_2 get_port_id get_task_id get_time +rust_tzset rust_gmtime rust_localtime rust_timegm From 9d01c46c07c2418ae5c26f03785c350185b17ed0 Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Tue, 1 May 2012 08:14:56 -0700 Subject: [PATCH 3/4] core: Add iterable functions to io::reader_utils. --- src/libcore/io.rs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/libcore/io.rs b/src/libcore/io.rs index beac1e5fb09..e210ab0944c 100644 --- a/src/libcore/io.rs +++ b/src/libcore/io.rs @@ -161,6 +161,24 @@ impl reader_util for reader { while !self.eof() { buf += self.read_bytes(2048u); } buf } + + fn each_byte(it: fn(int) -> bool) { + while !self.eof() { + if !it(self.read_byte()) { break; } + } + } + + fn each_char(it: fn(char) -> bool) { + while !self.eof() { + if !it(self.read_char()) { break; } + } + } + + fn each_line(it: fn(str) -> bool) { + while !self.eof() { + if !it(self.read_line()) { break; } + } + } } // Reader implementations From 24cfe29a8a4f4fe4dba16191508e44f98d92ed7f Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Wed, 2 May 2012 17:37:32 -0700 Subject: [PATCH 4/4] std: Fix a typo --- src/libstd/sha1.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libstd/sha1.rs b/src/libstd/sha1.rs index dbb5a22f404..3f62c6764ed 100644 --- a/src/libstd/sha1.rs +++ b/src/libstd/sha1.rs @@ -1,7 +1,7 @@ #[doc =" An implementation of the SHA-1 cryptographic hash. -First create a `sha1` object using the `mk_sha1` constructor, then +First create a `sha1` object using the `sha1` constructor, then feed it input using the `input` or `input_str` methods, which may be called any number of times.