<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fa">
	<id>https://wikialborz.com/history/%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:GetParameters?feed=atom</id>
	<title>پودمان:GetParameters - تاریخچهٔ نسخه‌ها</title>
	<link rel="self" type="application/atom+xml" href="https://wikialborz.com/history/%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:GetParameters?feed=atom"/>
	<link rel="alternate" type="text/html" href="https://wikialborz.com/history/%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:GetParameters"/>
	<updated>2026-08-16T06:00:43Z</updated>
	<subtitle>تاریخچهٔ نسخه‌ها برای این صفحه در ویکی</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://wikialborz.com/index.php?title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:GetParameters&amp;diff=5963&amp;oldid=prev</id>
		<title>Modir: صفحه‌ای تازه حاوی «local p = {}  -- Helper function that populates the argument list given that user may need to use a mix of named and unnamed parameters.  This is relevant because named parameters are not identical to unnamed parameters due to string trimming, and when dealing with strings we sometimes want to either preserve or remove that whitespace depending on the application.  function p.getParameters( frame_args, arg_list )     local new_args...» ایجاد کرد</title>
		<link rel="alternate" type="text/html" href="https://wikialborz.com/index.php?title=%D9%BE%D9%88%D8%AF%D9%85%D8%A7%D9%86:GetParameters&amp;diff=5963&amp;oldid=prev"/>
		<updated>2025-03-02T18:22:46Z</updated>

		<summary type="html">&lt;p&gt;صفحه‌ای تازه حاوی «local p = {}  --[[ Helper function that populates the argument list given that user may need to use a mix of named and unnamed parameters.  This is relevant because named parameters are not identical to unnamed parameters due to string trimming, and when dealing with strings we sometimes want to either preserve or remove that whitespace depending on the application. ]] function p.getParameters( frame_args, arg_list )     local new_args...» ایجاد کرد&lt;/p&gt;
&lt;p&gt;&lt;b&gt;صفحهٔ تازه&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Helper function that populates the argument list given that user may need to use a mix of&lt;br /&gt;
named and unnamed parameters.  This is relevant because named parameters are not&lt;br /&gt;
identical to unnamed parameters due to string trimming, and when dealing with strings&lt;br /&gt;
we sometimes want to either preserve or remove that whitespace depending on the application.&lt;br /&gt;
]]&lt;br /&gt;
function p.getParameters( frame_args, arg_list )&lt;br /&gt;
    local new_args = {};&lt;br /&gt;
    local index = 1;&lt;br /&gt;
    local value;&lt;br /&gt;
    &lt;br /&gt;
    for i,arg in ipairs( arg_list ) do&lt;br /&gt;
        value = frame_args[arg]&lt;br /&gt;
        if value == nil then&lt;br /&gt;
            value = frame_args[index];&lt;br /&gt;
            index = index + 1;&lt;br /&gt;
        end&lt;br /&gt;
        new_args[arg] = value;&lt;br /&gt;
    end&lt;br /&gt;
    &lt;br /&gt;
    return new_args;&lt;br /&gt;
end        &lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Helper Function to interpret boolean strings&lt;br /&gt;
]]&lt;br /&gt;
function p.getBoolean( boolean_str )&lt;br /&gt;
    local boolean_value;&lt;br /&gt;
    &lt;br /&gt;
    if type( boolean_str ) == &amp;#039;string&amp;#039; then&lt;br /&gt;
        boolean_str = boolean_str:lower();&lt;br /&gt;
        if boolean_str == &amp;#039;false&amp;#039; or boolean_str == &amp;#039;no&amp;#039; or boolean_str == &amp;#039;0&amp;#039; &lt;br /&gt;
                or boolean_str == &amp;#039;&amp;#039; then&lt;br /&gt;
            boolean_value = false;&lt;br /&gt;
        else&lt;br /&gt;
            boolean_value = true;&lt;br /&gt;
        end    &lt;br /&gt;
    elseif type( boolean_str ) == &amp;#039;boolean&amp;#039; then&lt;br /&gt;
        boolean_value = boolean_str;&lt;br /&gt;
    else&lt;br /&gt;
        error( &amp;#039;No boolean value found&amp;#039; );&lt;br /&gt;
    end    &lt;br /&gt;
    return boolean_value&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.defined(frame)&lt;br /&gt;
	local arg = mw.text.trim(frame.args[1])&lt;br /&gt;
	--if arg == tostring(tonumber(arg)) then -- undesired result for &amp;#039;-0&amp;#039;&lt;br /&gt;
	--	arg = tonumber(arg)&lt;br /&gt;
	--end&lt;br /&gt;
	--if mw.ustring.find(arg, &amp;#039;^%s*-?[1-9][0-9]*%s*$&amp;#039;) ~= nil or arg == &amp;#039;0&amp;#039; then&lt;br /&gt;
	--	arg = tonumber(arg)&lt;br /&gt;
	--end&lt;br /&gt;
	if mw.ustring.find(arg, &amp;#039;^-?[1-9][0-9]*$&amp;#039;) ~= nil then&lt;br /&gt;
		arg = tonumber(arg)&lt;br /&gt;
	elseif arg == &amp;#039;0&amp;#039; then&lt;br /&gt;
		arg = 0&lt;br /&gt;
	end&lt;br /&gt;
	return frame:getParent().args[arg] ~= nil&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Modir</name></author>
	</entry>
</feed>