Module:NavboxV2/EvenoddContext:修订间差异
来自大天使虫洞百科
更多操作
zh>Xiplus-abot 小 已保护“Module:NavboxV2/EvenoddContext”:高風險模板:21967引用<!-- 機器人3 -->([编辑=仅允许模板编辑员](无限期)[移动=仅允许模板编辑员](无限期)) |
小 导入1个版本 |
||
(没有差异)
| |||
2024年10月14日 (一) 07:18的最新版本
此模块的文档可以在Module:NavboxV2/EvenoddContext/doc创建
-- evenodd swap Context start
local EvenoddContext = {
['_type'] = "eosContext",
['evenodd'] = "",
["currentVal"] = {},
["nextVal"] = {},
--[[ ['oddstyle'] = "",
['evenstyle'] = "",]]
}
EvenoddContext.__index = EvenoddContext
function EvenoddContext.new(context,getArgFunc)
local prefix = context.prefix
local evenodd = getArgFunc(prefix, "evenodd", nil ,context)
local a,b = "odd", "even"
local noStyle = false
if evenodd == "odd" or evenodd == "even" then -- 奇偶锁定
a , b = evenodd , evenodd
elseif evenodd == "off" then --
a , b ,noStyle = "off" , "off" , true
elseif evenodd == "swap" then -- 对调
a , b = b , a
end
local newObj = {}
setmetatable(newObj, EvenoddContext)
newObj.evenodd = evenodd
newObj.currentVal = {a, 'navbox-' .. a }
newObj.nextVal = {b, 'navbox-' .. b }
--[[newObj.oddstyle , newObj.evenstyle =
getArgFunc(prefix, "oddstyle", "") , getArgFunc(prefix, "evenstyle", "")]]
return newObj
end
function EvenoddContext:current(isNext)
local returnArr = self.currentVal
if isNext == true then self.currentVal, self.nextVal = self.nextVal, self.currentVal end
return unpack(returnArr)
end
function EvenoddContext:currentOddEven()
return self:current()
end
function EvenoddContext:next()
return self:current(true)
end
function EvenoddContext:evenoddArgValue()
return self.evenodd
end
---------------------
return EvenoddContext