///|
fn main {
let french = @runtime.Bundle::new(
"fr-FR",
@intl.provider(),
use_isolating=false,
)
ignore(
french.add_resource(
"rows = { $count ->\n [one] Une ligne\n *[other] { NUMBER($count) } lignes\n}\n",
),
)
let english = @runtime.Bundle::new(
"en-US",
@intl.provider(),
use_isolating=false,
)
ignore(
english.add_resource("summary = Report complete\nrows = { $count } rows\n"),
)
let localizer = @runtime.Localizer::new([french, english])
let rows = localizer.format("rows", arguments={ "count": @runtime.number(2) })
let summary = localizer.format("summary")
let missing = localizer.format("unknown")
if rows.value != "2 lignes" ||
rows.locale != "fr-FR" ||
summary.value != "Report complete" ||
summary.locale != "en-US" {
abort("Report fallback mismatch")
}
if missing.errors.length() != 1 {
abort("Missing-key diagnostics were lost")
}
println(rows.value)
println(summary.value)
println("missing key handled: " + missing.value)
}