Boolean Expression library for Lua
This project is maintained by A-G-D
Back to: Table of Contents
Creating a BoolExpr object is pretty straightforward.
do
local function FilterExpression1()
if <...> then
return true
end
return false
end
local function FilterExpression2()
if <...> then
return true
end
return false
end
do
-- Create a new boolean expression
local and_expr = BoolExpr.And(FilterExpression1, FilterExpression2)
...
end
end
The BoolExpr.And() constructor has a built-in check against nil arguments.
It is also possible to create boolean expressions using ordinary tables, by using the boolean expression operators declared as enum types.
do
local function FilterExpression1()
if <...> then
return true
end
return false
end
local function FilterExpression2()
if <...> then
return true
end
return false
end
do
-- Create a new boolean expression
local and_expr = {BoolExpr.AND, FilterExpression1, FilterExpression2}
...
end
end
In this particular case, the BoolExpr.AND boolean expression operator is used (see Boolean Expression Operators). The user have the full responsibility of ensuring the validity (i.e., not nil) of the passed expressions when using this method of construction since it does not have the built-in checking and assertion, though consequently, this method has no additional overhead whatsoever as the process is just a simple table creation.
Previous: Overview