Sha256: 0cee6b17de0afabb5fac62062378870d611f9c477eb7568a79557693f0442873

Contents?: true

Size: 752 Bytes

Versions: 7

Compression:

Stored size: 752 Bytes

Contents

#include <ruby.h>

static VALUE rb_sym_assess_string_uminus;
static VALUE rb_sym_dup;
static VALUE rb_sym_freeze;

/*
 * The String#-@ method calls to the str_uminus method in String.C. This method
 * differs in behavior from String#freeze in that it removes instance variables
 * from the object when it is frozen. Rather than implement a trace map for
 * frozen things (to which you cannot implment weak references, resulting in
 * a potential memory leak), we'll override the method so that, in essence, it
 * never calls String#-@ for unfrozen and tracked objects, but instead calls
 * String#freeze, which will leave our properties alone.
 * -HM
 */
static VALUE contrast_assess_string_uminus(const VALUE obj);

void Init_cs__assess_string(void);

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
contrast-agent-3.10.2 ext/cs__assess_string/cs__assess_string.h
contrast-agent-3.10.1 ext/cs__assess_string/cs__assess_string.h
contrast-agent-3.10.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-3.9.1 ext/cs__assess_string/cs__assess_string.h
contrast-agent-3.9.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-3.8.5 ext/cs__assess_string/cs__assess_string.h
contrast-agent-3.8.4 ext/cs__assess_string/cs__assess_string.h