(callback func(*RevInfo))
| 328 | } |
| 329 | |
| 330 | func (tree RevTree) forEachLeaf(callback func(*RevInfo)) { |
| 331 | isParent := map[string]bool{} |
| 332 | for _, info := range tree { |
| 333 | isParent[info.Parent] = true |
| 334 | } |
| 335 | for revid, info := range tree { |
| 336 | if !isParent[revid] { |
| 337 | callback(info) |
| 338 | |
| 339 | } |
| 340 | } |
| 341 | } |
| 342 | |
| 343 | func (tree RevTree) isLeaf(revid string) bool { |
| 344 | if !tree.contains(revid) { |
no outgoing calls