Skip to content

Commit 31acc76

Browse files
committed
---
yaml --- r: 151551 b: refs/heads/try2 c: 72fc4a5 h: refs/heads/master i: 151549: 909d4d9 151547: 2e6c99f 151543: c962146 151535: 8893e0c 151519: 0f441a0 151487: 5d28b88 151423: 8ae3640 151295: 66464db 151039: 23747c4 150527: 8531317 149503: 6a254f5 147455: 5fb3c26 v: v3
1 parent c40b186 commit 31acc76

File tree

3 files changed

+21
-5
lines changed

3 files changed

+21
-5
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: 78a7676898d9f80ab540c6df5d4c9ce35bb50463
55
refs/heads/try: 519addf6277dbafccbb4159db4b710c37eaa2ec5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: f1735cefcfdee5260ea6961cf785f545a340ff85
8+
refs/heads/try2: 72fc4a5eb72b8ba96dba66400c7eecac93b0b252
99
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try2/src/doc/tutorial.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2385,7 +2385,7 @@ fn print_all<T: Printable>(printable_things: ~[T]) {
23852385
Declaring `T` as conforming to the `Printable` trait (as we earlier
23862386
did with `Clone`) makes it possible to call methods from that trait
23872387
on values of type `T` inside the function. It will also cause a
2388-
compile-time error when anyone tries to call `print_all` on an array
2388+
compile-time error when anyone tries to call `print_all` on a vector
23892389
whose element type does not have a `Printable` implementation.
23902390

23912391
Type parameters can have multiple bounds by separating them with `+`,
@@ -2428,9 +2428,9 @@ fn draw_all<T: Drawable>(shapes: ~[T]) {
24282428
# draw_all(~[c]);
24292429
~~~~
24302430

2431-
You can call that on an array of circles, or an array of rectangles
2431+
You can call that on a vector of circles, or a vector of rectangles
24322432
(assuming those have suitable `Drawable` traits defined), but not on
2433-
an array containing both circles and rectangles. When such behavior is
2433+
a vector containing both circles and rectangles. When such behavior is
24342434
needed, a trait name can alternately be used as a type, called
24352435
an _object_.
24362436

branches/try2/src/libstd/strbuf.rs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
1313
use c_vec::CVec;
1414
use char::Char;
15-
use container::Container;
15+
use container::{Container, Mutable};
1616
use fmt;
1717
use io::Writer;
1818
use iter::{Extendable, FromIterator, Iterator, range};
@@ -245,6 +245,13 @@ impl Container for StrBuf {
245245
}
246246
}
247247

248+
impl Mutable for StrBuf {
249+
#[inline]
250+
fn clear(&mut self) {
251+
self.vec.clear()
252+
}
253+
}
254+
248255
impl FromIterator<char> for StrBuf {
249256
fn from_iter<I:Iterator<char>>(iterator: I) -> StrBuf {
250257
let mut buf = StrBuf::new();
@@ -298,6 +305,7 @@ impl<H:Writer> ::hash::Hash<H> for StrBuf {
298305
#[cfg(test)]
299306
mod tests {
300307
extern crate test;
308+
use container::{Container, Mutable};
301309
use self::test::Bencher;
302310
use str::{Str, StrSlice};
303311
use super::StrBuf;
@@ -380,4 +388,12 @@ mod tests {
380388
let mut s = StrBuf::from_str("\u00FC"); // ü
381389
s.truncate(1);
382390
}
391+
392+
#[test]
393+
fn test_str_clear() {
394+
let mut s = StrBuf::from_str("12345");
395+
s.clear();
396+
assert_eq!(s.len(), 0);
397+
assert_eq!(s.as_slice(), "");
398+
}
383399
}

0 commit comments

Comments
 (0)