diff options
| author | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2011-08-10 09:27:11 -0700 |
|---|---|---|
| committer | Graydon Hoare <graydon@mozilla.com> | 2011-08-16 15:05:56 -0700 |
| commit | f764f9a8cf52e686ba6e54b594e6bbbdd5bc7b32 (patch) | |
| tree | 24a39688027a41a7a3e7e4a2239cfedf12fb20e9 /src/lib/either.rs | |
| parent | 8043788e3a71a951892577cbcb623ac94b908677 (diff) | |
| download | rust-f764f9a8cf52e686ba6e54b594e6bbbdd5bc7b32.tar.gz rust-f764f9a8cf52e686ba6e54b594e6bbbdd5bc7b32.zip | |
Port the stdlib to the typaram foo<T> syntax.
Diffstat (limited to 'src/lib/either.rs')
| -rw-r--r-- | src/lib/either.rs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/lib/either.rs b/src/lib/either.rs index 018eee24dc6..78496bec917 100644 --- a/src/lib/either.rs +++ b/src/lib/either.rs @@ -6,30 +6,30 @@ import option::none; tag t[T, U] { left(T); right(U); } fn either[T, U, V](f_left: &block(&T) -> V, f_right: &block(&U) -> V, - value: &t[T, U]) -> V { + value: &t<T, U>) -> V { alt value { left(l) { f_left(l) } right(r) { f_right(r) } } } -fn lefts[T, U](eithers: &[t[T, U]]) -> [T] { +fn lefts[T, U](eithers: &[t<T, U>]) -> [T] { let result: [T] = ~[]; - for elt: t[T, U] in eithers { + for elt: t<T, U> in eithers { alt elt { left(l) { result += ~[l] } _ {/* fallthrough */ } } } ret result; } -fn rights[T, U](eithers: &[t[T, U]]) -> [U] { +fn rights[T, U](eithers: &[t<T, U>]) -> [U] { let result: [U] = ~[]; - for elt: t[T, U] in eithers { + for elt: t<T, U> in eithers { alt elt { right(r) { result += ~[r] } _ {/* fallthrough */ } } } ret result; } -fn partition[T, U](eithers: &[t[T, U]]) -> {lefts: [T], rights: [U]} { +fn partition[T, U](eithers: &[t<T, U>]) -> {lefts: [T], rights: [U]} { let lefts: [T] = ~[]; let rights: [U] = ~[]; - for elt: t[T, U] in eithers { + for elt: t<T, U> in eithers { alt elt { left(l) { lefts += ~[l] } right(r) { rights += ~[r] } } } ret {lefts: lefts, rights: rights}; |
