모듈:Yesno

imported>Mr. Stradivarius님의 2013년 9월 26일 (목) 22:21 판 (stop making the default "default" value true, as we run into problems if you need to distinguish between false and nil)

이 모듈은 불리언 또는 불리언 스타일 문자열 입력을 처리하기 위한 일관된 인터페이스를 제공합니다. 루아가 truefalse 불리언 값을 허용하지만 위키코드 틀들은 "yes", "no" 등의 문자열을 통해서만 불리언 값을 표현할 수 있습니다. 이 모듈은 이러한 종류의 문자열을 처리하여 루아가 처리할 수 있게 불리언 입력으로 변환해 줍니다. nil 값의 경우 nil로 반환하여 nilfalse를 구별합니다. 이 모듈은 다른 루아 구조를 입력으로 받기도 합니다. (예: 불리언, 숫자, 테이블, 함수)

자세한 설명은 en:Module:Yesno를 참고하십시오.


-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to the template {{yesno}}.
return function (val, default)
    val = type(val) == 'string' and mw.ustring.lower(val) or val -- put in lower case
    if val == nil then
        return nil
    elseif val == false or val == 'no' or val == 'n' or val == 'false' or tonumber(val) == 0 then
        return false
    elseif val == true or val == 'yes' or val == 'y' or val == 'true' or tonumber(val) == 1 then
        return true
    else
        return default
    end
end
• 현재 페이지 URL 줄이기