diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2014-01-01 13:51:15 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2014-01-01 13:51:15 +0000 |
commit | ac9fd56075cccbdff9e27ecc3eb959713da6dc72 (patch) | |
tree | 8b88d6b2555b8a690e0a93addca1f15d16eec7df /aports/db.lua | |
parent | 188bb4489afd5cc47e52a6590abb5543c27bad94 (diff) | |
download | lua-aports-ac9fd56075cccbdff9e27ecc3eb959713da6dc72.tar.bz2 lua-aports-ac9fd56075cccbdff9e27ecc3eb959713da6dc72.tar.xz |
db: add each_need_build() iterator
iterates over all aports that needs build
Diffstat (limited to 'aports/db.lua')
-rw-r--r-- | aports/db.lua | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/aports/db.lua b/aports/db.lua index b59f1cb..3f85920 100644 --- a/aports/db.lua +++ b/aports/db.lua @@ -176,8 +176,8 @@ end function Aports:each() return coroutine.wrap(function() - for name, a in self:each_name() do - for _, pkg in pairs(a) do + for name, pkglist in self:each_name() do + for _, pkg in pairs(pkglist) do coroutine.yield(pkg, name) end end @@ -194,6 +194,16 @@ function Aports:each_aport() end) end +function Aports:each_need_build() + return coroutine.wrap(function() + for aport in self:each_aport() do + if not aport:apk_file_exists() then + coroutine.yield(aport) + end + end + end) +end + function M.new(aportsdir, ...) local h = Aports h.aportsdir = aportsdir |