Sha256: 394450bdf913116918e83f63e1e6cca9bc67d3408ef95f77e38e391f01179b6e

Contents?: true

Size: 1011 Bytes

Versions: 65

Compression:

Stored size: 1011 Bytes

Contents

#include <ruby.h>

static VALUE rb_sym_assess_string_uminus;
static VALUE rb_sym_assess_string_freeze;
// Contrast::Agent::Assess::Tracker::PROPERTIES_HASH
static VALUE properties_hash;
static VALUE rb_sym_dup;
static VALUE rb_sym_freeze;
static VALUE rb_sym_pre_freeze;
static VALUE properties_hash;

/*
 * 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 int argc, VALUE *argv,
                                           const VALUE obj);

void Init_cs__assess_string(void);

Version data entries

65 entries across 65 versions & 1 rubygems

Version Path
contrast-agent-7.6.1 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.6.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.5.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.4.1 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.4.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.3.2 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.3.1 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.3.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.2.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.1.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-7.0.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.15.3 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.15.2 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.15.1 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.15.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.14.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.13.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.12.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.11.0 ext/cs__assess_string/cs__assess_string.h
contrast-agent-6.10.0 ext/cs__assess_string/cs__assess_string.h