consume_until_balanced

in lib/twitter_cldr/transforms/transforms/parser.rb [92:108]


        def consume_until_balanced
          open_brackets = 0
          consumed_tokens = []

          if is_opening?(current_token) || is_closing?(current_token)
            loop do
              open_brackets += 1 if is_opening?(current_token)
              open_brackets -= 1 if is_closing?(current_token)
              consumed_tokens << current_token
              next_token(current_token.type)
              break if open_brackets == 0 || eof?
            end
          end

          consumed_tokens
        end