Sha256: 009c36825bef678d2e61414abf89b31989dcd148e3c1641765312cad27f0e339
Contents?: true
Size: 633 Bytes
Versions: 95
Compression:
Stored size: 633 Bytes
Contents
use std::collections::HashMap; pub struct School { grades: HashMap<u32, Vec<String>> } impl School { pub fn new() -> School { School { grades: HashMap::new() } } pub fn add(&mut self, grade: u32, student: &str) { let mut entry = self.grades.entry(grade).or_insert(Vec::new()); entry.push(student.to_string()); entry.sort(); } pub fn grades(&self) -> Vec<u32> { let mut s = self.grades.keys().cloned().collect::<Vec<u32>>(); s.sort(); s } pub fn grade(&self, grade: u32) -> Option<&Vec<String>> { self.grades.get(&grade) } }
Version data entries
95 entries across 95 versions & 1 rubygems