Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

The module returns one value from its list of unnamed parameters.

The named parameter |idx= is the index of the parameter that is to be returned.

Negative indices count backward from the end of the list.

A wrapper template may be used to simplify usage.

For accessing both named and unnamed parameters, see {{#invoke:params|value_of}}.

Examples

  • {{#invoke:Pn |getVal | idx=1}}
  • {{#invoke:Pn |getVal | idx= | a | b | c | d | e | f }} → a
  • {{#invoke:Pn |getVal | idx=0 | a | b | c | d | e | f }}
  • {{#invoke:Pn |getVal | idx=1 | a | b | c | d | e | f }} → a
  • {{#invoke:Pn |getVal | idx=2 | a | b | c | d | e | f }} → b
  • {{#invoke:Pn |getVal | idx=-1 | a | b | c | d | e | f }} → f
  • {{#invoke:Pn |getVal | idx=99 | a | b | c | d | e | f }}

Using a wrapper template, {{P-1}}:

  • {{p-1 | a | b | c | d | e | f }} → f
  • {{wdib|ps=1|P8011|qid=Q84055514}}Script error: No such module "WikidataIB".
  • {{wdib|ps=1|P8011|qid=Q84055514|list=p-1}}Script error: No such module "WikidataIB".

See also



--[[
Module that returns one value from a list of unnamed parameters
Named parameter idx is the index of the parameter that is to be returned
Negative indices count backward from the end of the list
==]]

local p = {}

p.getVal = function(frame)
	local args = {}
	-- copy arguments from frame object and its parent
	for k, v in pairs(frame.args) do
		args[k] = v
	end
	for k, v in pairs(frame:getParent().args) do
		args[k] = v
	end
	if not args[1] then
		return nil
	end
	local idx = tonumber(args.idx) or 1
	if idx < 0 then idx = #args + idx + 1 end
	return args[idx]
end

return p