Module:Explode String

From Valheim Wiki
Revision as of 21:05, 18 February 2021 by Mave (talk | contribs)

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

---A cached version of the current frame, the interface to the parser.
local currentFrame
---Holds the arguments from the template call.
local args_table


local currentFrame -- global cache for current frame object.
local inputArgs -- global args cache.

---Return a trimmed version of the value of the template parameter with the specified `key`.
---Return `nil` if the parameter is empty or unset.
---@param key string|number
---@return string|nil
local function getArg(key)
	local value = args_table[key]
	if not value then
		return nil
	end
	value = trim(value)
	if value == '' then
		return nil
	end
	return value
end

local p = {}
p.loop = function(frame)
	local stage = frame.args.stage
	local rows = {}
	-- the actual looping part
	for value in mw.text.gsplit(stage, ',') do
		table.insert(rows, '|' .. value)
	end
	
	return ' {|\n' .. table.concat(rows, '\n|-\n') .. '\n|}'
end

-----------------------------------------------------------------
-- main return object
return {

loop = function(frame, args)
	string = getArg('string')
	linksuffix = getArg('linksuffix') or ''

	-- output
	return string..linksuffix..'test'

end,

}