diff options
author | Lars Wirzenius <liw@liw.fi> | 2019-09-20 09:06:03 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2019-09-20 09:06:03 +0300 |
commit | 699915a71d5ff173427b7510fd8fdea24b637b6a (patch) | |
tree | 0484e77c0966b8be61da14003d54ef314be2f369 /src/lib.rs | |
parent | e707402b75371f8b0d8bc55f2dfdf4ee137e9833 (diff) | |
download | roadmap-699915a71d5ff173427b7510fd8fdea24b637b6a.tar.gz |
Change: Step::dependencies into an iterator
Diffstat (limited to 'src/lib.rs')
-rw-r--r-- | src/lib.rs | 12 |
1 files changed, 7 insertions, 5 deletions
@@ -18,7 +18,8 @@ //! endgoal.add_dependency("first"); //! assert_eq!(endgoal.name(), "endgoal"); //! assert_eq!(endgoal.label(), "the end goal"); -//! assert_eq!(endgoal.dependencies(), vec!["first"]); +//! let deps: Vec<&String> = endgoal.dependencies().collect(); +//! assert_eq!(deps, vec!["first"]); //! //! let first = roadmap::Step::new("first", "the first step"); //! @@ -66,8 +67,8 @@ impl Step { } /// Return vector of names of dependencies for a step. - pub fn dependencies(&self) -> Vec<String> { - self.depends.clone() + pub fn dependencies(&self) -> impl Iterator<Item=&String> { + self.depends.iter() } /// Add the name of a dependency to step. @@ -155,14 +156,15 @@ mod tests { let step = Step::new("myname", "my label"); assert_eq!(step.name(), "myname"); assert_eq!(step.label(), "my label"); - assert_eq!(step.dependencies().len(), 0); + assert_eq!(step.dependencies().count(), 0); } #[test] fn add_step_dependency() { let mut second = Step::new("second", "the second step"); second.add_dependency("first"); - assert_eq!(second.dependencies(), vec!["first"]); + let deps: Vec<&String> = second.dependencies().collect(); + assert_eq!(deps, vec!["first"]); } #[test] |