equal
deleted
inserted
replaced
235 end |
235 end |
236 end |
236 end |
237 end |
237 end |
238 |
238 |
239 if schema.properties then |
239 if schema.properties then |
240 for k, s in pairs(schema.properties) do |
240 local additional : schema_t | boolean = schema.additionalProperties or true |
241 if data[k] ~= nil then |
|
242 if not validate(s, data[k]) then |
|
243 return false |
|
244 end |
|
245 end |
|
246 end |
|
247 end |
|
248 |
|
249 if schema.additionalProperties then |
|
250 for k, v in pairs(data) do |
241 for k, v in pairs(data) do |
251 if k is string then |
242 local s = schema.properties[k as string] or additional as schema_t |
252 if not (schema.properties and schema.properties[k]) then |
243 if not validate(s, v) then |
253 if not validate(schema.additionalProperties, v) then |
244 return false |
254 return false |
245 end |
255 end |
246 end |
256 end |
247 elseif schema.additionalProperties then |
257 end |
248 for k, v in pairs(data) do |
258 end |
249 if not validate(schema.additionalProperties, v) then |
259 elseif schema.properties then |
250 return false |
260 for k in pairs(data) do |
|
261 if k is string then |
|
262 if schema.properties[k] == nil then |
|
263 return false |
|
264 end |
|
265 end |
251 end |
266 end |
252 end |
267 end |
253 end |
268 |
254 |
269 if schema.uniqueItems then |
255 if schema.uniqueItems then |