更改

跳到导航 跳到搜索
添加797字节 、 2021年1月3日 (日) 03:05
无编辑摘要
第37行: 第37行:  
     return ret
 
     return ret
 
end
 
end
 +
 +
local QueryBuilder = {content = ""}
 +
 +
function QueryBuilder:new()
 +
    local n = {}
 +
    setmetatable(n, QueryBuilder)
 +
    self.__index = self
 +
    return n
 +
end
 +
function QueryBuilder:cat(v)
 +
    local n = self:new()
 +
    n.content = self.content .. v
 +
    return n
 +
end
 +
function QueryBuilder:bracket(t)
 +
    return self:cat('[['..t..']] ')
 +
end
 +
function QueryBuilder:or_()
 +
    return self:cat(' OR ')
 +
end
 +
function QueryBuilder:done()
 +
    return self.content
 +
end
 +
function QueryBuilder:page(name)
 +
    return self:bracket(name)
 +
end
 +
function QueryBuilder:category(name)
 +
    return self:bracket("Category:"..name)
 +
end
 +
function QueryBuilder:exists(prop)
 +
    return self:bracket(prop..'::+')
 +
end
 +
function QueryBuilder:property(prop, value)
 +
    return self:bracket(prop..'::'..value)
 +
end
 +
 +
p.builder = QueryBuilder
    
return p
 
return p

导航菜单