Module:CDD

This module implements the Coxeter–Dynkin diagram template, Template:CDD. It is invoked as

  • {{#invoke:CDD|CDD}}

though the parameter is ignored; instead it uses the parameters passed to the template. See the template documentation for how that is used.

For using this from other Lua modules, first load the module.

<source lang="lua"> local CDD = require('Module:CDD')._CDD </source>

You can then use it with the following syntax.

<source lang="lua"> CDD{"node", "3", "node"} </source>

See the template documentation for possible inputs.


-- module to turn a parameter list into a list of [[Coxeter–Dynkin diagram]] images.
-- See the template documentation or any example for how it is used and works.
local p = {}

function p.CDD(frame)
	-- For calling from #invoke.
	local pframe = frame:getParent()
	local args = pframe.args
	return p._CDD(args)
end
	
function p._CDD(args)
	-- For calling from other Lua modules.
	local body ='<span style="display:inline-block;">'         -- create and start the output string
	for v, x in ipairs(args) do                                -- process params, ignoring any names
		if (x ~= '') then					-- check for null/empty names
        		body = body .. "[[File:CDel_" .. x .. ".png|link=]]"   -- write file for this parameter
		end
	end
	body = body .. "</span>"                                   -- finish output string
	return body                                                -- return result
end

return p