Description: wraps some api call to use with ruby1.9 as well as ruby1.8
Origin:      vendor
Author:      KURASHIKI Satoru <lurdan@gmail.com>

Index: hyperestraier/rubynative/src/estraier.c
===================================================================
--- hyperestraier.orig/rubynative/src/estraier.c	2010-05-23 15:24:39.752082000 +0900
+++ hyperestraier/rubynative/src/estraier.c	2010-05-23 15:25:07.547571000 +0900
@@ -24,6 +24,18 @@
 #define VNINFO         "@informer"
 #define VNCOND         "@cond"
 
+#ifndef RUBY_19
+#ifndef RARRAY_LEN
+#define RARRAY_LEN(v) (RARRAY(v)->len)
+#endif
+#ifndef RSTRING_LEN
+#define RSTRING_LEN(v) (RSTRING(v)->len)
+#endif
+#ifndef RSTRING_PTR
+#define RSTRING_PTR(v) (RSTRING(v)->ptr)
+#endif
+#endif
+
 typedef struct {
   int *ids;
   int *dbidxs;
@@ -351,7 +363,7 @@
   vdoc = rb_iv_get(vself, VNDATA);
   Data_Get_Struct(vdoc, ESTDOC, doc);
   Check_Type(vwords, T_ARRAY);
-  len = RARRAY(vwords)->len;
+  len = RARRAY_LEN(vwords);
   for(i = 0; i < len; i++){
     Check_Type(rb_ary_entry(vwords, i), T_STRING);
   }
@@ -764,7 +776,7 @@
   CBMAP *hints;
   int i, dnum, *res, rnum;
   Check_Type(vdbs, T_ARRAY);
-  dnum = RARRAY(vdbs)->len;
+  dnum = RARRAY_LEN(vdbs);
   dbs = cbmalloc(dnum * sizeof(ESTMTDB *) + 1);
   for(i = 0; i < dnum; i++){
     vdb = rb_ary_entry(vdbs, i);
@@ -1189,10 +1201,10 @@
   VALUE str;
   int i, len;
   list = cblistopen();
-  len = RARRAY(obj)->len;
+  len = RARRAY_LEN(obj);
   for(i = 0; i < len; i++){
     str = rb_ary_entry(obj, i);
-    cblistpush(list, RSTRING(str)->ptr, RSTRING(str)->len);
+    cblistpush(list, RSTRING_PTR(str), RSTRING_LEN(str));
   }
   return list;
 }
@@ -1218,14 +1230,14 @@
   int i, len;
   map = cbmapopenex(31);
   keys = rb_funcall(obj, rb_intern("keys"), 0);
-  len = RARRAY(keys)->len;
+  len = RARRAY_LEN(keys);
   for(i = 0; i < len; i++){
     key = rb_ary_entry(keys, i);
     val = rb_hash_aref(obj, key);
     key = rb_String(key);
     val = rb_String(val);
-    cbmapput(map, RSTRING(key)->ptr, RSTRING(key)->len,
-             RSTRING(val)->ptr, RSTRING(val)->len, 0);
+    cbmapput(map, RSTRING_PTR(key), RSTRING_LEN(key),
+             RSTRING_PTR(val), RSTRING_LEN(val), 0);
   }
   return map;
 }
Index: hyperestraier/rubynative/Makefile.in
===================================================================
--- hyperestraier.orig/rubynative/Makefile.in	2010-05-26 15:27:13.910782000 +0900
+++ hyperestraier/rubynative/Makefile.in	2010-05-26 15:27:29.822099000 +0900
@@ -27,8 +27,8 @@
 DESTDIR =
 
 # Building binaries
-RUBY = @RUBY@
-RDOC = @RDOC@
+#RUBY = @RUBY@
+#RDOC = @RDOC@
 RUNENV = LD_LIBRARY_PATH=.:..:/lib:/usr/lib:$(MYLIBDIR):$(HOME)/lib:/usr/local/lib:@MYRUNPATH@
 
 
Index: hyperestraier/rubypure/Makefile.in
===================================================================
--- hyperestraier.orig/rubypure/Makefile.in	2010-05-26 15:25:57.033879000 +0900
+++ hyperestraier/rubypure/Makefile.in	2010-05-26 15:26:49.679556000 +0900
@@ -26,8 +26,8 @@
 DESTDIR =
 
 # Building binaries
-RUBY = @RUBY@
-RDOC = @RDOC@
+#RUBY = @RUBY@
+#RDOC = @RDOC@
 
 
 
