Sha256: c6e065534c805b530190553d3e7ed5bdc321a1b0fb21f492f6d682d3d5843b1a

Contents?: true

Size: 771 Bytes

Versions: 2

Compression:

Stored size: 771 Bytes

Contents

/* Various internal macros and function definitions. Not exposed to other Ruby C extensions. */
/* Author: Sameer Deshmukh (@v0dro) */

#ifndef RUBY_NDTYPES_INTERNAL_H
#define RUBY_NDTYPES_INTERNAL_H

#include "ruby.h"
#include "ndtypes.h"
#include "ruby_ndtypes.h"

extern VALUE mNDTypes_GCGuard;

/* typedefs */
typedef struct NdtObject NdtObject;

/* macros */
#if SIZEOF_LONG == SIZEOF_VOIDP
# define PTR2NUM(x)   (LONG2NUM((long)(x)))
# define NUM2PTR(x)   ((void*)(NUM2ULONG(x)))
#elif SIZEOF_LONG_LONG == SIZEOF_VOIDP
# define PTR2NUM(x)   (LL2NUM((LONG_LONG)(x)))
# define NUM2PTR(x)   ((void*)(NUM2ULL(x)))
#else
# error ---->> ruby requires sizeof(void*) == sizeof(long) or sizeof(LONG_LONG) to be compiled. <<----
#endif

#endif  /* RUBY_NDTYPES_INTERNAL_H */

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ndtypes-0.2.0dev8 ext/ruby_ndtypes/ruby_ndtypes_internal.h
ndtypes-0.2.0dev6 ext/ruby_ndtypes/ruby_ndtypes_internal.h