1 | initial version |
There is not a way to shorten your code to get that. They way you have it is idiomatic and (in my opinion) easy to read.
Here are a couple of options for longer, worse, and (probably) slower code. I don't recommend using them.
You could switch to a table lookup, but that's longer code.
if a == 0 and ({[1] = true, [3] = true, [5] = true})[b] then ...
You could define a helper function, but that's also longer code.
local function has_value(tab, val)
for index, value in ipairs(tab) do
if value == val then
return true
end
end
return false
end
if a == 0 and has_value({1, 3, 5}, b) then
Again, your code is fine. I would leave it as-is.