+ table.insert(self.deps, deps)
+end
+
+-- Serialize dependencies
+function AbstractValue.deplist2json(self, section, deplist)
+ local deps, i, d = { }
+
+ if type(self.deps) == "table" then
+ for i, d in ipairs(deplist or self.deps) do
+ local a, k, v = { }
+ for k, v in pairs(d) do
+ if k:find("!", 1, true) then
+ a[k] = v
+ elseif k:find(".", 1, true) then
+ a['cbid.%s' % k] = v
+ else
+ a['cbid.%s.%s.%s' %{ self.config, section, k }] = v
+ end
+ end
+ deps[#deps+1] = a
+ end
+ end
+
+ return util.serialize_json(deps)