@tannin/plural-forms
Version:
Compiles a function to compute the plural forms index for a given value
19 lines (16 loc) • 517 B
JavaScript
import compile from '@tannin/compile';
/**
* Given a C expression, returns a function which, when called with a value,
* evaluates the result with the value assumed to be the "n" variable of the
* expression. The result will be coerced to its numeric equivalent.
*
* @param {string} expression C expression.
*
* @return {Function} Evaluator function.
*/
export default function pluralForms( expression ) {
var evaluate = compile( expression );
return function( n ) {
return +evaluate( { n: n } );
};
}