model = {
{ player = "Cliff", age = 35, gender = "male" },
{ player = "Ally", age = 36, gender = "female" },
{ player = "Jasmine", age = 13, gender = "female" },
{ player = "Lauren", age = 6.5, gender = "female" }
}
function for_each_array(list, operation)
for key, value in ipairs(list) do
operation(value)
end
end
function filter_if(list, predicate)
return function(value)
if(predicate(value)) then
list[#list + 1] = value
end
end
end
local list = {}
for_each_array(model, filter_if(list, function(each) return each.age < 30 end))
bW9kZWwgPSB7CiAgeyBwbGF5ZXIgPSAiQ2xpZmYiLCBhZ2UgPSAzNSwgZ2VuZGVyID0gIm1hbGUiIH0sCiAgeyBwbGF5ZXIgPSAiQWxseSIsIGFnZSA9IDM2LCBnZW5kZXIgPSAiZmVtYWxlIiB9LAogIHsgcGxheWVyID0gIkphc21pbmUiLCBhZ2UgPSAxMywgZ2VuZGVyID0gImZlbWFsZSIgfSwKICB7IHBsYXllciA9ICJMYXVyZW4iLCBhZ2UgPSA2LjUsIGdlbmRlciA9ICJmZW1hbGUiIH0KfQoKICAgIGZ1bmN0aW9uIGZvcl9lYWNoX2FycmF5KGxpc3QsIG9wZXJhdGlvbikKICAgICAgZm9yIGtleSwgdmFsdWUgaW4gaXBhaXJzKGxpc3QpIGRvCiAgICAgICAgb3BlcmF0aW9uKHZhbHVlKQogICAgICBlbmQKICAgIGVuZAogICAgCiAgICBmdW5jdGlvbiBmaWx0ZXJfaWYobGlzdCwgcHJlZGljYXRlKQogICAgICByZXR1cm4gZnVuY3Rpb24odmFsdWUpCiAgICAgICAgaWYocHJlZGljYXRlKHZhbHVlKSkgdGhlbgogICAgICAgICAgbGlzdFsjbGlzdCArIDFdID0gdmFsdWUKICAgICAgICBlbmQKICAgICAgZW5kCiAgICBlbmQKICAgIAogICAgbG9jYWwgbGlzdCA9IHt9CiAgICBmb3JfZWFjaF9hcnJheShtb2RlbCwgZmlsdGVyX2lmKGxpc3QsIGZ1bmN0aW9uKGVhY2gpIHJldHVybiBlYWNoLmFnZSA8IDMwIGVuZCkpCg==