The FluentValue::matches function is used to implement select statements, however, when a number meets a number the two are compared with a == b on the whole FluentNumber struct where the eq() is a #[derive(PartialEq)] which results in a mismatch once one of the options is set differently making select statements against configured fluent numbers with number literals not match.
Numbers are only compared by value in the javascript version which is the behavior I'd expect from reading the syntax guide.
The FluentValue::matches function is used to implement select statements, however, when a number meets a number the two are compared with
a == bon the wholeFluentNumberstruct where theeq()is a#[derive(PartialEq)]which results in a mismatch once one of the options is set differently making select statements against configured fluent numbers with number literals not match.Numbers are only compared by value in the javascript version which is the behavior I'd expect from reading the syntax guide.