class Haml::StringSplitter

def compile_tokens!(exps, tokens)

def compile_tokens!(exps, tokens)
  beg_str, end_str = strip_quotes!(tokens)
  until tokens.empty?
    _, type, str = tokens.shift
    case type
    when :on_tstring_content
      beg_str, end_str = escape_quotes(beg_str, end_str)
      exps << [:static, eval("#{beg_str}#{str}#{end_str}").to_s]
    when :on_embexpr_beg
      embedded = shift_balanced_embexpr(tokens)
      exps << [:dynamic, embedded] unless embedded.empty?
    end
  end
end