Módulo:Yesno

De RuneScape Wiki
Ir para navegação Ir para pesquisar
Documentação do módulo
Esta documentação é transcluída de Módulo:Yesno/doc. [editar] [atualizar]

Este módulo é um módulo de apoio para ser usado por outros módulos; ele pode não ser projetado para ser invocado diretamente. See RuneScape:Lua/Helper modules for a full list and more information. Para uma lista completa de módulos usando esse apoio clique aqui

MóduloFunçãoTipoUso
Yesno(arg)Qualquer valorLê o arg para sim/não e retorna o boolean apropriado, ou um valor nulo
(arg1,arg2)Qualquer valor, qualquer valorLê arg1 para sim/não e retorna o boolean apropriado; retorna arg2 caso arg1 não for um valor apropriado

--[[
{{Módulo de apoio|name=Yesno
|fname1=(arg)
|ftype1=Any value
|fuse1=Reads arg for yes/no and returns the appropriate boolean or nil
|fname2=(arg1,arg2)
|ftype2=Any value, Any value
|fuse2=Reads arg1 for yes/no and returns the appropriate boolean; returns arg2 if arg1 was not an applicable value
}}
--]]
-- <pre>
-- Usado para avaliar args como booleans onde necessário
--
-- Baseado em <https://en.wikipedia.org/wiki/Module:Yesno>
-- ver histórico da página lá para contribuidores
--

return function( arg, default )
    arg = type( arg ) == 'string' and mw.ustring.lower( arg ) or arg

    if arg == nil then
        return nil
    end

    if
    	arg == true or
        arg == 'yes' or
        arg == 'y' or
        arg == 'true' or
        arg == 'sim' or
        tonumber( arg ) ==  1
    then
        return true
    end

    if
    	arg == false or
        arg == 'no' or
        arg == 'n' or
        arg == 'false' or
        arg == 'não' or
        arg == 'nao' or
        tonumber( arg ) == 0
    then
        return false
    end

    return default
end