Sha256: 361de2e137f4d36a335389b4738724a78189491a89e43972d5dd48be02a8f5e7

Contents?: true

Size: 829 Bytes

Versions: 2

Compression:

Stored size: 829 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;
typedef struct ResourceBufferObject ResourceBufferObject;

/* 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.0dev5 ext/ruby_ndtypes/ruby_ndtypes_internal.h
ndtypes-0.2.0dev4 ext/ruby_ndtypes/ruby_ndtypes_internal.h