diff options
Diffstat (limited to 'cache/cache.go')
| -rw-r--r-- | cache/cache.go | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/cache/cache.go b/cache/cache.go index ae2d081..98bdbe8 100644 --- a/cache/cache.go +++ b/cache/cache.go @@ -111,3 +111,19 @@ func LoadState(f fs.FS, cache Cache, indexers []model.Indexer, runners []model.R } return model.NewState(f, locs, indexers, runners) } + +func (c Cache) Strip(needle Cache) Cache { + var result []Entry +outer: + for _, e := range c.Entries { + for _, t := range needle.Entries { + if t.Path == e.Path { + continue outer + } + } + result = append(result, e) + } + return Cache{ + Entries: result, + } +} |
