Sha256: 14622fd904af71da6776c68a4dac02d1d430552a36579a4e34990fea67a8d964

Contents?: true

Size: 857 Bytes

Versions: 2

Compression:

Stored size: 857 Bytes

Contents

#include <ruby.h>

#include "clock_id.h"

static VALUE native_working_p(VALUE self);

#define DDTRACE_EXPORT __attribute__ ((visibility ("default")))

void DDTRACE_EXPORT Init_ddtrace_profiling_native_extension(void) {
  VALUE datadog_module = rb_define_module("Datadog");
  VALUE profiling_module = rb_define_module_under(datadog_module, "Profiling");
  VALUE native_extension_module = rb_define_module_under(profiling_module, "NativeExtension");

  rb_define_singleton_method(native_extension_module, "native_working?", native_working_p, 0);
  rb_funcall(native_extension_module, rb_intern("private_class_method"), 1, ID2SYM(rb_intern("native_working?")));

  rb_define_singleton_method(native_extension_module, "clock_id_for", clock_id_for, 1); // from clock_id.h
}

static VALUE native_working_p(VALUE self) {
  self_test_clock_id();

  return Qtrue;
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ddtrace-1.0.0 ext/ddtrace_profiling_native_extension/profiling.c
ddtrace-1.0.0.beta2 ext/ddtrace_profiling_native_extension/profiling.c