Sha256: e960e2f726c6293fe18924fef1946921ee2867a5cf7b6a30ecc1f97a0f272eee

Contents?: true

Size: 498 Bytes

Versions: 40

Compression:

Stored size: 498 Bytes

Contents

# frozen_string_literal: true
require 'ripper'
require 'hamlit/ruby_expression'

module Hamlit
  module StringSplitter
    # `code` param must be valid string literal
    def self.compile(code)
      unless Ripper.respond_to?(:lex) # truffleruby doesn't have Ripper.lex
        return [[:dynamic, code]]
      end

      begin
        Temple::Filters::StringSplitter.compile(code)
      rescue Temple::FilterError => e
        raise Hamlit::InternalError.new(e.message)
      end
    end
  end
end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
hamlit-3.0.3-java lib/hamlit/string_splitter.rb
hamlit-3.0.3 lib/hamlit/string_splitter.rb
hamlit-3.0.2-java lib/hamlit/string_splitter.rb
hamlit-3.0.2 lib/hamlit/string_splitter.rb
hamlit-3.0.1-java lib/hamlit/string_splitter.rb
hamlit-3.0.1 lib/hamlit/string_splitter.rb
hamlit-3.0.0-java lib/hamlit/string_splitter.rb
hamlit-3.0.0 lib/hamlit/string_splitter.rb
hamlit-2.16.2-java lib/hamlit/string_splitter.rb
hamlit-2.16.2 lib/hamlit/string_splitter.rb
hamlit-2.16.1-java lib/hamlit/string_splitter.rb
hamlit-2.16.1 lib/hamlit/string_splitter.rb
hamlit-2.16.0-java lib/hamlit/string_splitter.rb
hamlit-2.16.0 lib/hamlit/string_splitter.rb
hamlit-2.15.2-java lib/hamlit/string_splitter.rb
hamlit-2.15.2 lib/hamlit/string_splitter.rb
hamlit-2.15.1-java lib/hamlit/string_splitter.rb
hamlit-2.15.1 lib/hamlit/string_splitter.rb
hamlit-2.15.0-java lib/hamlit/string_splitter.rb
hamlit-2.15.0 lib/hamlit/string_splitter.rb