From b72d36816e746ce42e5feeba853d13067178d4a4 Mon Sep 17 00:00:00 2001 From: VorTechnix <45538536+VorTechnix@users.noreply.github.com> Date: Sun, 10 Oct 2021 14:39:30 -0700 Subject: [PATCH] added to_boolean --- worldeditadditions/utils/strings/init.lua | 1 + worldeditadditions/utils/strings/to_boolean.lua | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 worldeditadditions/utils/strings/to_boolean.lua diff --git a/worldeditadditions/utils/strings/init.lua b/worldeditadditions/utils/strings/init.lua index 32a8454..d5b76c9 100644 --- a/worldeditadditions/utils/strings/init.lua +++ b/worldeditadditions/utils/strings/init.lua @@ -4,3 +4,4 @@ dofile(wea.modpath.."/utils/strings/split.lua") dofile(wea.modpath.."/utils/strings/polyfill.lua") dofile(wea.modpath.."/utils/strings/tochars.lua") wea.split_shell = dofile(wea.modpath.."/utils/strings/split_shell.lua") +wea.to_boolean = dofile(wea.modpath.."/utils/strings/to_boolean.lua") diff --git a/worldeditadditions/utils/strings/to_boolean.lua b/worldeditadditions/utils/strings/to_boolean.lua new file mode 100644 index 0000000..b1fe2d3 --- /dev/null +++ b/worldeditadditions/utils/strings/to_boolean.lua @@ -0,0 +1,12 @@ +--- Converts input to a value of type Boolean. +-- @param arg any Input to convert +-- @returns boolean +local function to_boolean(arg) + local typ = type(arg) + if typ == "boolean" then return arg + elseif typ == number and arg > 0 then return true + elseif arg == "false" or arg == "no" then return false + elseif typ ~= "nil" then return true + else return false end +end +return to_boolean