Module:etymology/templates/cognate

local process_params = require("Module:parameters").process

local export = {}

do local function get_args(parent_args) local alias_of_t = {alias_of = "t"} local plain = {} return process_params(parent_args, {			[1] = {				required = true,				sublist = true,				type = "language",				family = true,				default = "und"			},			[2] = plain,			[3] = {alias_of = "alt"},			[4] = alias_of_t,			["alt"] = plain,			["conj"] = plain,			["g"] = {list = true},			["gloss"] = alias_of_t,			["id"] = plain,			["lit"] = plain,			["pos"] = plain,			["sc"] = {type = "script"},			["sort"] = plain,			["t"] = plain,			["tr"] = plain,			["ts"] = plain,		}) end function export.cognate(frame) local parent_args = frame:getParent.args if parent_args.gloss then require("Module:debug/track")("cognate/gloss param") end local args = get_args(parent_args) local sources = args[1] local terminfo = { lang = sources[#sources], sc = args["sc"], term = args[2], alt = args["alt"], id = args["id"], genders = args["g"], tr = args["tr"], ts = args["ts"], gloss = args["t"], pos = args["pos"], lit = args["lit"] }		if #sources > 1 then return require("Module:etymology/multi").format_multi_cognate(sources, terminfo, args.sort, args.conj) end return require("Module:etymology").format_cognate(terminfo, args.sort) end end

function export.noncognate(frame) return export.cognate(frame) end

return export