Skip to content

Commit 7db691e

Browse files
jasonthompsonalexcrichton
authored andcommitted
Add examples for StrVector methods
- examples for connect and concat - also fixed extra word in existing docs
1 parent 2f355b7 commit 7db691e

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

src/libcollections/str.rs

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,9 +160,27 @@ pub fn from_chars(chs: &[char]) -> String {
160160
/// Methods for vectors of strings
161161
pub trait StrVector {
162162
/// Concatenate a vector of strings.
163+
///
164+
/// # Example
165+
///
166+
/// ```rust
167+
/// let first = "Restaurant at the End of the".to_string();
168+
/// let second = " Universe".to_string();
169+
/// let string_vec = vec![first, second];
170+
/// assert_eq!(string_vec.concat(), "Restaurant at the End of the Universe".to_string());
171+
/// ```
163172
fn concat(&self) -> String;
164173

165174
/// Concatenate a vector of strings, placing a given separator between each.
175+
///
176+
/// # Example
177+
///
178+
/// ```rust
179+
/// let first = "Roast".to_string();
180+
/// let second = "Sirloin Steak".to_string();
181+
/// let string_vec = vec![first, second];
182+
/// assert_eq!(string_vec.connect(", "), "Roast, Sirloin Steak".to_string());
183+
/// ```
166184
fn connect(&self, sep: &str) -> String;
167185
}
168186

@@ -172,7 +190,7 @@ impl<'a, S: Str> StrVector for &'a [S] {
172190
return String::new();
173191
}
174192

175-
// `len` calculation may overflow but push_str but will check boundaries
193+
// `len` calculation may overflow but push_str will check boundaries
176194
let len = self.iter().map(|s| s.as_slice().len()).sum();
177195

178196
let mut result = String::with_capacity(len);

0 commit comments

Comments
 (0)