-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Labels
enhancementNew feature or requestNew feature or request
Description
in master, the list of languages supported is hardcoded. what if we dispatch on Val{:sym}? something like:
function spelled_out(
number::Number;
lang::Symbol = Symbol(first(split(ENV["LANG"], '.'))),
dict::Symbol = :modern
)
return spelled_out_impl(number,Val{lang},dict)
end
#catchall
function spelled_out_impl(number,lang,dict)
throw(error("We do not support $lang yet. Please make an issue and someone might be able to help you, or feel free to contribute."))
endand each impl. could just simply do:
function spelled_out_impl(number,lang::Type{Val{:ru}},dict)
the use of the type instead of building the val is because there is a cost on building the struct, that is elided completely when only using the type
as a nice consequence of using this, an external user could plug its own spelling function, or modify the output of existing ones
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request