module Appsignal::Extension::Jruby::StringHelpers
def make_appsignal_string(ruby_string)
def make_appsignal_string(ruby_string) unless ruby_string.is_a?(String) raise ArgumentError, "argument is not a string" end AppsignalString.new.tap do |appsignal_string| appsignal_string[:len] = ruby_string.bytesize appsignal_string[:buf] = FFI::MemoryPointer.from_string(ruby_string) end end
def make_ruby_string(appsignal_string)
def make_ruby_string(appsignal_string) appsignal_string[:buf].read_string(appsignal_string[:len]).tap do |ruby_string| ruby_string.force_encoding(Encoding::UTF_8) end end