From: shyouhei@... Date: 2017-04-17T07:22:48+00:00 Subject: [ruby-core:80727] [Ruby trunk Feature#13252] C API for creating strings without copying Issue #13252 has been updated by shyouhei (Shyouhei Urabe). Assignee set to ko1 (Koichi Sasada) ---------------------------------------- Feature #13252: C API for creating strings without copying https://bugs.ruby-lang.org/issues/13252#change-64280 * Author: tenderlovemaking (Aaron Patterson) * Status: Assigned * Priority: Normal * Assignee: ko1 (Koichi Sasada) * Target version: ---------------------------------------- Hi, I'd like to have a C API that allows me to create String objects without copying the underlying `char *`. Basically a C API similar to the `rb_str_new_static`, but have the GC free the underlying `char *` when the object dies. The use case is that at work we have C libraries that allocate `char *` and we want to pass those to Ruby land without copying the buffer. Here is an example of what we're doing now: https://github.com/arthurnn/memcached/commit/1886546944b420dc6953096ba1f5eae772001e31#diff-f508f9b8263ea397534b2b3f8efed987R147 I'd like it if there was a public API for doing something like this. Thank you! P.S. I am sure I can't be the first to ask for this, but I couldn't find a similar issue in RedMine, so if this has been answered I apologize. P.P.S. I've added a patch for kind of what I want. ---Files-------------------------------- out.diff (1.66 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: