projects
/
ruby-ecore.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
We now use real structs to wrap objects.
[ruby-ecore.git]
/
src
/
ecore
/
rb_ecore.h
diff --git
a/src/ecore/rb_ecore.h
b/src/ecore/rb_ecore.h
index 2c5d8165dca4cb6905fbb389f679c48ea9ee4c30..0c46a434f8f33f247b4391a58e9cd2e9a26490fc 100644
(file)
--- a/
src/ecore/rb_ecore.h
+++ b/
src/ecore/rb_ecore.h
@@
-1,5
+1,5
@@
/*
/*
- * $Id: rb_ecore.h
45 2004-07-26 11:00:14
Z tilman $
+ * $Id: rb_ecore.h
50 2004-08-01 10:18:39
Z tilman $
*
* Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
*
*
* Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
*
@@
-24,14
+24,7
@@
#define GET_OBJ(obj, type, o) \
type *(o) = NULL; \
\
#define GET_OBJ(obj, type, o) \
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) { \
#define CHECK_BOOL(val) \
if (TYPE ((val)) != T_TRUE && TYPE ((val)) != T_FALSE) { \
@@
-41,6
+34,15
@@
return Qnil; \
}
return Qnil; \
}
+#define CHECK_CLASS(val, klass) \
+ if (!rb_obj_is_kind_of ((val), (klass))) { \
+ rb_raise (rb_eTypeError, \
+ "wrong argument type %s (expected %s)", \
+ rb_obj_classname ((val)), \
+ rb_class2name ((klass))); \
+ return Qnil; \
+ }
+
#define INSPECT(obj, type) \
char buf[128]; \
\
#define INSPECT(obj, type) \
char buf[128]; \
\
@@
-48,7
+50,7
@@
\
snprintf (buf, sizeof (buf), \
"#<%s:%p ptr=%p>", rb_obj_classname ((obj)), \
\
snprintf (buf, sizeof (buf), \
"#<%s:%p ptr=%p>", rb_obj_classname ((obj)), \
- (void *) obj,
*o
); \
+ (void *) obj,
o->real
); \
\
return rb_str_new2 (buf);
\
return rb_str_new2 (buf);