--[[
මෙම මොඩියුලය විවිධ භාෂාවන්ගේ පද සිංහලට පෙරළීම සඳහා සහයෝගය දක්වයි.
]]
local p = {}
local m_sinhala = require("Module:sinhala")
--[[
english2sinhala
මෙයට ලබා දෙන ඉංග්රීසි වචනයට අදාළ සිංහල වචනය ලබා දෙයි.
භාවිතය:
{{#invoke:සිංහල|english2sinhala|ඉංග්රීසි_වචනය|}}
හෝ
{{#invoke:සිංහල|english2sinhala|s=ඉංග්රීසි_වචනය}}
පරාමිති
s: ඉංග්රීසි වචනය
]]
function p.english2sinhala( frame )
local new_args = p._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return m_sinhala.sinhala( s )
end
--[[
english2sinhala_plural
මෙයට ලබා දෙන ඉංග්රීසි වචනයට අදාළ සිංහල වචනයේ බහු වචනය ලබා දෙයි.
භාවිතය:
{{#invoke:සිංහල|english2sinhala_plural|ඉංග්රීසි_වචනය|}}
හෝ
{{#invoke:සිංහල|english2sinhala_plural|s=ඉංග්රීසි_වචනය}}
පරාමිති
s: ඉංග්රීසි වචනය
]]
function p.english2sinhala_plural( frame )
local new_args = p._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return m_sinhala.sinhala_plural( s )
end
--[[
පැරාමිති වෙන්කර ගැනීම සඳහා වන සහාය ක්රියාවලිය.
]]
function p._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper Function to interpret boolean strings
]]
function p._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function to handle error messages.
]]
function p._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'සිංහල මොඩියුලයේ අසමත් වන ස්ථාන'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if p._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">සිංහල මොඩියුලයේ අසමත් වීම: ' .. error_str .. '</strong>'
if error_category ~= '' and not p._getBoolean( no_category ) then
error_str = '[[ප්රවර්ගය:' .. error_category .. ']]' .. error_str
end
return error_str
end
return p