首页
随机
登录
设置
关于MalacoKnowledge
免责声明
MalacoKnowledge
搜索
查看“模块:Clade/sequential”的源代码
←
模块:Clade/sequential
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
local p = {} local pargs function p.main(frame) pargs = frame:getParent().args local args = {} local i=1 local contentString = "" local max = getMax() if pargs['inverse'] then contentString = p.inverseClade(frame,max,max) else contentString = p.clade(frame,1,max) end return contentString end function p.clade(frame,i,max) -- |1= is basal at top local args = {} args[1] = pargs [i] args['label1'] = pargs ['label'..tostring(i)] args['sublabel1'] = pargs ['sublabel'..tostring(i)] if i+1 == max then args[2] = pargs [i+1] args['label2'] = pargs ['label'..tostring(i+1)] args['sublabel2'] = pargs ['sublabel'..tostring(i+1)] else args[2] = p.clade(frame,i+1,max) -- or the result of the next pair end local template = "Clade" if pargs ['reverse'] then template = "CladeR" end return frame:expandTemplate{ title = template, args = args } end function p.inverseClade(frame,i,max) -- |1= innermost at bottom local args = {} args[2] = pargs [i] args['label2'] = pargs ['label'..tostring(i)] args['sublabel2'] = pargs ['sublabel'..tostring(i)] if i-1 == 1 then args[1] = pargs [i-1] args['label1'] = pargs ['label'..tostring(i-1)] args['sublabel1'] = pargs ['sublabel'..tostring(i-1)] else args[1] = p.inverseClade(frame,i-1,max) -- or the result of the next pair end local template = "Clade" if pargs ['reverse'] then template = "CladeR" end return frame:expandTemplate{ title = template , args = args } end function p.inverseClade2(frame,i,max) -- |1= is innermost at bottom local args = {} args[1] = pargs [i] args['label1'] = pargs ['label'..tostring(i)] if i-1 == 1 then args[2] = pargs [i-1] args['label2'] = pargs ['label'..tostring(i-1)] else args[2] = p.inverseClade(frame,i-1,max) -- or the result of the next pair end return frame:expandTemplate{ title = "Clade", args = args } end function getMax() local i=1 local max while i<50 do if pargs [i] then max = i i=i+1 else break end end return max end return p
返回
模块:Clade/sequential
。