Jump to content
Toggle menu
  • 799 articles
  • 4.8K files
  • 4 users
  • 64.6K edits
2b2t Uncensored
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Revision as of 17:28, 18 July 2022 by 2b2twiki>Evalprime (import modules from personal wiki)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Documentation for this module may be created at Module:Paramtest/doc

local p = {}

function p.is_empty(arg)
	return not string.find(arg or '', '%S')
end

function p.default_to(arg, default)
	if string.find(arg or '', '%S') then
		return arg
	else
		return default
	end
end

function p.defaults(...)
	local ret = {}
	for i, v in ipairs(...) do
		if string.find(v[1] or '', '%S') then
			table.insert(ret,v[1])
		else
			-- or false, because nil is removed
			table.insert(ret,v[2] or false)
		end
	end
	return unpack(ret)
end

function p.has_content(arg)
	return string.find(arg or '', '%S')
end

function p.ucfirst(arg)
	if not arg or arg:len() == 0 then
		return nil
	elseif arg:len() == 1 then
		return arg:upper()
	else
		return arg:sub(1,1):upper() .. arg:sub(2)
	end
end

function p.ucflc(arg)
	if not arg or arg:len() == 0 then
		return nil
	elseif arg:len() == 1 then
		return arg:upper()
	else
		return arg:sub(1,1):upper() .. arg:sub(2):lower()
	end
end

return p