Content deleted Content added
mNo edit summary |
Adapted the rank flags system a bit |
||
Line 70:
cfg.bestRank = true
cfg.ranks = {true, true, false} -- preferred = true, normal = true, deprecated = false
cfg.
cfg.
cfg.flagRank = false
cfg.period = 0
Line 272:
function convertRank(rank)
if
return 1
elseif
return 2
elseif
return 3
else
Line 807:
end
function Config:
local rankPos
self.foundRank = 3 -- must equal the lowest possible rank▼
▲ if (rank == "best") then
self.bestRank = true
self.flagBest = true -- mark that 'best' flag was given
return
else▼
self.bestRank = false▼
end
if
rankPos = 1
elseif
rankPos = 2
elseif
rankPos = 3
▲ else
return
end
-- one of the rank flags was given, check if another one was given before
if (rank:sub(-1) == "+") then▼
self.ranks = {false, false, false} -- no other rank flag given before, so unset ranks
self.bestRank = self.flagBest -- unsets bestRank only if 'best' flag was not given before
elseif (rank:sub(-1) == "-") then▼
self.flagRank = true -- mark that a rank flag was given
end
self.minRank = 3▼
for i = rankPos, 1, -1 do
end
for i = rankPos, #self.ranks do
end
else
self.
end
end
Line 865 ⟶ 872:
return true
elseif flag == "best" or flag:match('^preferred[+-]?$') or flag:match('^normal[+-]?$') or flag:match('^deprecated[+-]?$') then
self:
return true
elseif flag == "future" then
Line 927 ⟶ 934:
function Config:rankMatches(rankPos)
if self.bestRank then
return (self.ranks[rankPos] and self.foundRank >= rankPos)
else
return
end
end
Line 1,018 ⟶ 1,025:
local done = false
-- a rankPos should only apply to complete claims,
-- for the latter two, no rankPos should be given and their default rankPos must be the highest possible (i.e. 1)
if rankPos then
-- must NOT be reached when appending individual qualifiers or references
if (self.conf.bestRank or self.singleValue) and self.conf.foundRank > rankPos then▼
self.conf.foundRank = rankPos -- must NOT be overwritten when appending individual qualifiers or references
-- found a better rank, reset worse rank outputs
if self.
self.
elseif self.
self.outDeprecated = {}
end
end
end
else
-- must be reached when appending individual qualifiers or references
end
if rankPos == 1 then
-- must always be reached when appending individual qualifiers or references
self.outPreferred[#self.outPreferred + 1] = result
Line 1,045 ⟶ 1,057:
self.outNormal[#self.outNormal + 1] = result
if self.singleValue and not self.conf.
done = true
end
Line 1,051 ⟶ 1,063:
self.outDeprecated[#self.outDeprecated + 1] = result
if self.singleValue and not self.conf.
done = true
end
|