Sha256: b0eb68824fc3153a65e853cf9a8409c54bef4485bbc5b7de190a12ec3de756d3

Contents?: true

Size: 1.51 KB

Versions: 8

Compression:

Stored size: 1.51 KB

Contents

#ifndef DO_SQLITE3_H
#define DO_SQLITE3_H

#include <ruby.h>
#include <string.h>
#include <math.h>
#include <time.h>
#include <locale.h>
#include <sqlite3.h>
#include "compat.h"

#ifdef HAVE_RUBY_ENCODING_H
#include <ruby/encoding.h>

#define DO_STR_NEW2(str, encoding, internal_encoding) \
  ({ \
    VALUE _string = rb_str_new2((const char *)str); \
    if(encoding != -1) { \
      rb_enc_associate_index(_string, encoding); \
    } \
    if(internal_encoding) { \
      _string = rb_str_export_to_enc(_string, internal_encoding); \
    } \
    _string; \
  })

#define DO_STR_NEW(str, len, encoding, internal_encoding) \
  ({ \
    VALUE _string = rb_str_new((const char *)str, (long)len); \
    if(encoding != -1) { \
      rb_enc_associate_index(_string, encoding); \
    } \
    if(internal_encoding) { \
      _string = rb_str_export_to_enc(_string, internal_encoding); \
    } \
    _string; \
  })

#else

#define DO_STR_NEW2(str, encoding, internal_encoding) \
  rb_str_new2((const char *)str)

#define DO_STR_NEW(str, len, encoding, internal_encoding) \
  rb_str_new((const char *)str, (long)len)
#endif

#define CONST_GET(scope, constant) (rb_funcall(scope, ID_CONST_GET, 1, rb_str_new2(constant)))
#define DRIVER_CLASS(klass, parent) (rb_define_class_under(mSqlite3, klass, parent))

#ifdef _WIN32
#define do_int64 signed __int64
#else
#define do_int64 signed long long int
#endif

#ifndef HAVE_SQLITE3_PREPARE_V2
#define sqlite3_prepare_v2 sqlite3_prepare
#endif

static ID ID_CONST_GET;

void Init_do_sqlite3_extension();

#endif

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
do_sqlite3-0.10.3 ext/do_sqlite3/do_sqlite3.h
do_sqlite3-0.10.3-x86-mswin32-60 ext/do_sqlite3/do_sqlite3.h
do_sqlite3-0.10.3-x86-mingw32 ext/do_sqlite3/do_sqlite3.h
do_sqlite3-0.10.3-java ext/do_sqlite3/do_sqlite3.h
do_sqlite3-0.10.2 ext/do_sqlite3/do_sqlite3.h
do_sqlite3-0.10.2-x86-mswin32-60 ext/do_sqlite3/do_sqlite3.h
do_sqlite3-0.10.2-x86-mingw32 ext/do_sqlite3/do_sqlite3.h
do_sqlite3-0.10.2-java ext/do_sqlite3/do_sqlite3.h