We now use real structs to wrap objects.
[ruby-evas.git] / src / rb_evas_main.h
index 762c3a61a2fc01a8a37ce0bc44253cb749fc6d6f..474a6f5c41a22773c6d1156ece55db23a2dd3d27 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * $Id: rb_evas_main.h 32 2004-07-10 14:07:49Z tilman $
+ * $Id: rb_evas_main.h 49 2004-08-01 10:17:39Z tilman $
  *
  * Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
  *
 #define __RB_EVAS_MAIN_H
 
 #define GET_OBJ(obj, type, o) \
-       type **(o) = NULL; \
+       type *(o) = NULL; \
 \
-       Data_Get_Struct ((obj), type *, (o)); \
-\
-       if (!*(o)) { \
-               rb_raise (rb_eException, \
-                         "%s destroyed already", \
-                         rb_obj_classname ((obj))); \
-               return Qnil; \
-       }
+       Data_Get_Struct ((obj), type, (o));
 
 #define CHECK_BOOL(val) \
        if (TYPE ((val)) != T_TRUE && TYPE ((val)) != T_FALSE) { \
@@ -46,7 +39,7 @@
                rb_raise (rb_eTypeError, \
                          "wrong argument type %s (expected %s)", \
                          rb_obj_classname ((val)), \
-                         rb_obj_classname ((klass))); \
+                         rb_class2name ((klass))); \
                return Qnil; \
        }
 
@@ -57,7 +50,7 @@
 \
        snprintf (buf, sizeof (buf), \
                  "#<%s:%p ptr=%p>", rb_obj_classname ((obj)), \
-                 (void *) obj, *o); \
+                 (void *) obj, o->real); \
 \
        return rb_str_new2 (buf);