normal_rule_for

in lib/twitter_cldr/formatters/numbers/rbnf/rule_set.rb [172:197]


        def normal_rule_for(number)
          if rule = master_rule
            rule
          elsif number < 0 && rule = negative_rule
            rule
          elsif contains_fraction?(number) && number > 1 && rule = improper_fraction_rule
            rule
          elsif contains_fraction?(number) && number > 0 && number < 1 && rule = proper_fraction_rule
            rule
          else
            if rule = rule_for_value(number.abs)
              use_prev_rule = rule.substitution_count == 2 &&
                !rule.even_multiple_of?(rule.base_value) &&
                rule.even_multiple_of?(number)

              if use_prev_rule
                previous_rule_for(rule)
              else
                rule
              end
            else
              rules[search_start_index] || rules.first
            end
          end
        end