pub fn as_str<T: fmt::Display>(vec: &Vec<T>) -> String {
    let mut ret = String::new();
    for i in 0..vec.len() {
        ret.push_str(format!("{}", vec[i]).as_str());
        if i != vec.len() - 1 {
            ret.push_str(", ");
        }
    }
    ret
}
/// returns a formatted String for a Vec<T> (T needs Display trait)
returns a formatted String for a Vec (T needs Display trait)
returns a formatted String for a Vec ( T needs Display trait )
pub fn as_str<T: fmt::Display>(vec: &Vec<T>) -> String {
    let mut ret = String::new();
    for i in 0..vec.len() {
        ret.push_str(format!("{}", vec[i]).as_str());
        if i != vec.len() - 1 {
            ret.push_str(", ");
        }
    }
    ret
}
pub fn as_str < T : fmt :: Display > ( vec : & Vec < T > ) -> String { let mut ret = String :: new ( ) ; for i in 0 .. vec . len ( ) { ret . push_str ( format ! ( " " vec [ i ] ) . as_str ( ) ) ; if i != vec . len ( ) - 1 { ret . push_str ( " " ) ; } } ret }
returns a formatted String for a Vec<T> (T needs Display trait)
returns a formatted String for a Vec<T > ( T needs Display trait )
vec
&Vec<T>
vec
&Vec<T>