rice 1.0.2 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (92) hide show
  1. data/COPYING +2 -2
  2. data/Doxyfile +1 -1
  3. data/Makefile.in +8 -3
  4. data/Rakefile +3 -3
  5. data/config.guess +30 -49
  6. data/config.sub +4 -22
  7. data/configure +319 -104
  8. data/configure.ac +6 -2
  9. data/doxygen.ac +2 -2
  10. data/extconf.rb +22 -0
  11. data/post-autoconf.rb +3 -3
  12. data/post-automake.rb +2 -2
  13. data/rice/Array.ipp +7 -6
  14. data/rice/Critical_Guard.hpp +6 -0
  15. data/rice/Critical_Guard.ipp +6 -0
  16. data/rice/Data_Object.hpp +1 -120
  17. data/rice/Data_Object.ipp +5 -1
  18. data/rice/Data_Object_defn.hpp +132 -0
  19. data/rice/Data_Type.ipp +18 -2
  20. data/rice/Enum.ipp +3 -3
  21. data/rice/Exception.hpp +1 -61
  22. data/rice/Exception_Base.hpp +2 -24
  23. data/rice/Exception_Base.ipp +2 -0
  24. data/rice/Exception_Base_defn.hpp +27 -0
  25. data/rice/Exception_defn.hpp +69 -0
  26. data/rice/Hash.hpp +5 -1
  27. data/rice/Hash.ipp +7 -7
  28. data/rice/Makefile.am +20 -3
  29. data/rice/Makefile.in +39 -4
  30. data/rice/Module.cpp +11 -3
  31. data/rice/Module_impl.hpp +20 -9
  32. data/rice/Module_impl.ipp +84 -87
  33. data/rice/Object.cpp +1 -1
  34. data/rice/VM.cpp +14 -1
  35. data/rice/VM.hpp +6 -1
  36. data/rice/config.hpp +24 -3
  37. data/rice/config.hpp.in +21 -0
  38. data/rice/detail/Auto_Function_Wrapper.hpp +97 -65
  39. data/rice/detail/Auto_Function_Wrapper.ipp +160 -128
  40. data/rice/detail/Auto_Member_Function_Wrapper.hpp +96 -64
  41. data/rice/detail/Auto_Member_Function_Wrapper.ipp +160 -128
  42. data/rice/detail/Exception_Handler.hpp +2 -112
  43. data/rice/detail/Exception_Handler.ipp +68 -0
  44. data/rice/detail/Exception_Handler_defn.hpp +96 -0
  45. data/rice/detail/Iterator.hpp +93 -0
  46. data/rice/detail/check_ruby_type.cpp +8 -2
  47. data/rice/detail/creation_funcs.ipp +2 -2
  48. data/rice/detail/define_method_and_auto_wrap.hpp +4 -2
  49. data/rice/detail/define_method_and_auto_wrap.ipp +14 -5
  50. data/rice/detail/env.hpp +4 -0
  51. data/rice/detail/method_data.cpp +362 -75
  52. data/rice/detail/method_data.cpp.rpp +301 -0
  53. data/rice/detail/method_data.hpp +6 -18
  54. data/rice/detail/mininode.cpp +1220 -0
  55. data/rice/detail/mininode.cpp.rpp +62 -0
  56. data/rice/detail/mininode.hpp +320 -0
  57. data/rice/detail/mininode.hpp.rpp +119 -0
  58. data/rice/detail/protect.cpp +4 -2
  59. data/rice/detail/ruby.hpp +44 -18
  60. data/rice/detail/ruby_version_code.hpp +6 -0
  61. data/rice/detail/ruby_version_code.hpp.in +6 -0
  62. data/rice/detail/rubysig.hpp +6 -0
  63. data/rice/detail/st.hpp +6 -2
  64. data/rice/detail/wrap_function.hpp +50 -48
  65. data/rice/detail/wrap_function.ipp +48 -48
  66. data/rice/generate_code.rb +43 -293
  67. data/rice/global_function.hpp +10 -4
  68. data/rice/global_function.ipp +1 -2
  69. data/rice/ruby_mark.hpp +13 -0
  70. data/rice/ruby_try_catch.hpp +1 -1
  71. data/rice/rubypp.rb +97 -0
  72. data/rice/to_from_ruby.ipp +3 -3
  73. data/ruby.ac +44 -8
  74. data/ruby/Makefile.in +2 -0
  75. data/ruby/lib/Makefile.in +2 -0
  76. data/ruby/lib/mkmf-rice.rb.in +4 -1
  77. data/ruby/lib/version.rb +3 -0
  78. data/sample/Makefile.am +2 -2
  79. data/sample/Makefile.in +4 -2
  80. data/test/Makefile.am +2 -1
  81. data/test/Makefile.in +7 -2
  82. data/test/test_Array.cpp +2 -2
  83. data/test/test_Class.cpp +4 -1
  84. data/test/test_Critical_Guard.cpp +4 -0
  85. data/test/test_Data_Object.cpp +43 -3
  86. data/test/test_Hash.cpp +3 -3
  87. data/test/test_String.cpp +8 -8
  88. data/test/test_VM.cpp +1 -1
  89. data/test/test_global_functions.cpp +45 -0
  90. data/test/test_rice.rb +5 -0
  91. metadata +115 -98
  92. data/rice/detail/Iterator_Definer.hpp +0 -98
data/rice/Data_Type.ipp CHANGED
@@ -2,6 +2,7 @@
2
2
  #define Rice__Data_Type__ipp_
3
3
 
4
4
  #include "Class.hpp"
5
+ #include "String.hpp"
5
6
  #include "Data_Object.hpp"
6
7
  #include "detail/default_allocation_func.hpp"
7
8
  #include "detail/creation_funcs.hpp"
@@ -69,7 +70,10 @@ Data_Type()
69
70
  : Module_impl<Data_Type_Base, Data_Type<T> >(
70
71
  klass_ == Qnil ? rb_cObject : klass_)
71
72
  {
72
- unbound_instances().insert(this);
73
+ if(!is_bound())
74
+ {
75
+ unbound_instances().insert(this);
76
+ }
73
77
  }
74
78
 
75
79
  template<typename T>
@@ -138,11 +142,23 @@ from_ruby(Object x)
138
142
 
139
143
  void * v = DATA_PTR(x.value());
140
144
  Class klass = x.class_of();
145
+
146
+ if(klass.value() == klass_)
147
+ {
148
+ // Great, not converting to a base/derived type
149
+ Data_Type<T> data_klass;
150
+ Data_Object<T> obj(x, data_klass);
151
+ return obj.get();
152
+ }
153
+
141
154
  Data_Type_Base::Casters::const_iterator it(
142
155
  Data_Type_Base::casters_.find(klass));
143
156
  if(it == Data_Type_Base::casters_.end())
144
157
  {
145
- throw std::runtime_error("Derived type is unbound");
158
+ std::string s = "Derived class ";
159
+ s += klass.name().str();
160
+ s += " is not registered/bound in Rice";
161
+ throw std::runtime_error(s);
146
162
  }
147
163
 
148
164
  detail::Abstract_Caster * caster = it->second;
data/rice/Enum.ipp CHANGED
@@ -125,10 +125,10 @@ each(Object self)
125
125
  {
126
126
  VALUE enums_v = rb_iv_get(self, "enums");
127
127
  Check_Type(enums_v, T_ARRAY);
128
- RArray * enums = RARRAY(enums_v);
129
- for(int j = 0; j < enums->len; ++j)
128
+ Array enums(enums_v);
129
+ for(size_t j = 0; j < enums.size(); ++j)
130
130
  {
131
- rb_yield(enums->ptr[j]);
131
+ rb_yield(enums[j].value());
132
132
  }
133
133
  return Qnil;
134
134
  }
data/rice/Exception.hpp CHANGED
@@ -1,69 +1,9 @@
1
1
  #ifndef Rice__Exception__hpp_
2
2
  #define Rice__Exception__hpp_
3
3
 
4
+ #include "Exception_defn.hpp"
4
5
  #include "Exception_Base.hpp"
5
- #include "String.hpp"
6
6
  #include "Address_Registration_Guard.hpp"
7
7
 
8
- #include <stdexcept>
9
- #include "detail/ruby.hpp"
10
-
11
- namespace Rice
12
- {
13
-
14
- //! A placeholder for Ruby exceptions.
15
- /*! You can use this to safely throw a Ruby exception using C++ syntax:
16
- * \code
17
- * VALUE foo(VALUE self) {
18
- * RUBY_TRY {
19
- * throw Rice::Exception(rb_eMyException, "uh oh!");
20
- * RUBY_CATCH
21
- * }
22
- * \endcode
23
- */
24
- class Exception
25
- : public Exception_Base
26
- {
27
- public:
28
- //! Construct a Exception with the exception e.
29
- explicit Exception(VALUE e);
30
-
31
- //! Copy constructor.
32
- Exception(Exception const & other);
33
-
34
- //! Construct a Exception with printf-style formatting.
35
- /*! \param exc either an exception object or a class that inherits
36
- * from Exception.
37
- * \param fmt a printf-style format string
38
- * \param ... the arguments to the format string.
39
- */
40
- Exception(Object exc, char const * fmt, ...);
41
-
42
- //! Destructor
43
- virtual ~Exception() throw() { }
44
-
45
- //! Get the message the exception holds
46
- /*! \return the result of calling message() on the underlying
47
- * exception object.
48
- */
49
- String message() const;
50
-
51
- //! Get message as a char const *.
52
- /*! If message is a non-string object, then this function will attempt
53
- * to throw an exception (which it can't do because of the no-throw
54
- * specification).
55
- * \return the underlying C pointer of the underlying message object.
56
- */
57
- virtual char const * what() const throw();
58
-
59
- private:
60
- // Keep message around in case someone calls what() and then the GC
61
- // gets invoked.
62
- mutable VALUE message_;
63
- Address_Registration_Guard message_guard_;
64
- };
65
-
66
- } // namespace Rice
67
-
68
8
  #endif // Rice__Exception__hpp_
69
9
 
@@ -1,30 +1,8 @@
1
1
  #ifndef Rice__Exception_Base__hpp_
2
2
  #define Rice__Exception_Base__hpp_
3
3
 
4
- #include "Object_defn.hpp"
5
-
6
- namespace Rice
7
- {
8
-
9
- //! An abstract interface for Exception
10
- /*! This class exists to prevent a circular reference between
11
- * Exception.hpp and ruby_try_catch.hpp
12
- */
13
- class Exception_Base
14
- : public std::exception
15
- , public Object
16
- {
17
- public:
18
- Exception_Base(VALUE v);
19
-
20
- virtual ~Exception_Base() throw() = 0;
21
-
22
- virtual char const * what() const throw() = 0;
23
- };
24
-
25
- } // Rice
26
-
4
+ #include "Exception_Base_defn.hpp"
27
5
  #include "Exception_Base.ipp"
28
- #include "Object.hpp"
29
6
 
30
7
  #endif // Rice__Exception_Base__hpp_
8
+
@@ -1,3 +1,5 @@
1
+ #include "Object.hpp"
2
+
1
3
  inline Rice::Exception_Base::
2
4
  Exception_Base(VALUE v)
3
5
  : Object(v)
@@ -0,0 +1,27 @@
1
+ #ifndef Rice__Exception_Base_defn__hpp_
2
+ #define Rice__Exception_Base_defn__hpp_
3
+
4
+ #include "Object_defn.hpp"
5
+
6
+ namespace Rice
7
+ {
8
+
9
+ //! An abstract interface for Exception
10
+ /*! This class exists to prevent a circular reference between
11
+ * Exception.hpp and ruby_try_catch.hpp
12
+ */
13
+ class Exception_Base
14
+ : public std::exception
15
+ , public Object
16
+ {
17
+ public:
18
+ Exception_Base(VALUE v);
19
+
20
+ virtual ~Exception_Base() throw() = 0;
21
+
22
+ virtual char const * what() const throw() = 0;
23
+ };
24
+
25
+ } // Rice
26
+
27
+ #endif // Rice__Exception_Base_defn__hpp_
@@ -0,0 +1,69 @@
1
+ #ifndef Rice__Exception_defn__hpp_
2
+ #define Rice__Exception_defn__hpp_
3
+
4
+ #include "Exception_Base_defn.hpp"
5
+ #include "String.hpp"
6
+ #include "Address_Registration_Guard_defn.hpp"
7
+
8
+ #include <stdexcept>
9
+ #include "detail/ruby.hpp"
10
+
11
+ namespace Rice
12
+ {
13
+
14
+ //! A placeholder for Ruby exceptions.
15
+ /*! You can use this to safely throw a Ruby exception using C++ syntax:
16
+ * \code
17
+ * VALUE foo(VALUE self) {
18
+ * RUBY_TRY {
19
+ * throw Rice::Exception(rb_eMyException, "uh oh!");
20
+ * RUBY_CATCH
21
+ * }
22
+ * \endcode
23
+ */
24
+ class Exception
25
+ : public Exception_Base
26
+ {
27
+ public:
28
+ //! Construct a Exception with the exception e.
29
+ explicit Exception(VALUE e);
30
+
31
+ //! Copy constructor.
32
+ Exception(Exception const & other);
33
+
34
+ //! Construct a Exception with printf-style formatting.
35
+ /*! \param exc either an exception object or a class that inherits
36
+ * from Exception.
37
+ * \param fmt a printf-style format string
38
+ * \param ... the arguments to the format string.
39
+ */
40
+ Exception(Object exc, char const * fmt, ...);
41
+
42
+ //! Destructor
43
+ virtual ~Exception() throw() { }
44
+
45
+ //! Get the message the exception holds
46
+ /*! \return the result of calling message() on the underlying
47
+ * exception object.
48
+ */
49
+ String message() const;
50
+
51
+ //! Get message as a char const *.
52
+ /*! If message is a non-string object, then this function will attempt
53
+ * to throw an exception (which it can't do because of the no-throw
54
+ * specification).
55
+ * \return the underlying C pointer of the underlying message object.
56
+ */
57
+ virtual char const * what() const throw();
58
+
59
+ private:
60
+ // Keep message around in case someone calls what() and then the GC
61
+ // gets invoked.
62
+ mutable VALUE message_;
63
+ Address_Registration_Guard message_guard_;
64
+ };
65
+
66
+ } // namespace Rice
67
+
68
+ #endif // Rice__Exception_defn__hpp_
69
+
data/rice/Hash.hpp CHANGED
@@ -152,7 +152,7 @@ class Hash::Iterator
152
152
  {
153
153
  public:
154
154
  //! Construct a new Iterator.
155
- Iterator(Hash_Ref_T hash, size_t bin, st_table_entry * ptr);
155
+ Iterator(Hash_Ref_T hash, st_data_t bin, st_table_entry * ptr);
156
156
 
157
157
  //! Copy construct an Iterator.
158
158
  Iterator(Iterator const & iterator);
@@ -192,7 +192,11 @@ public:
192
192
  private:
193
193
  Hash hash_;
194
194
  st_table * tbl_;
195
+ #if RUBY_VERSION_CODE >= 190
196
+ st_index_t bin_;
197
+ #else
195
198
  int bin_;
199
+ #endif
196
200
  st_table_entry * ptr_;
197
201
 
198
202
  mutable typename detail::remove_const<Value_T>::Type tmp_;
data/rice/Hash.ipp CHANGED
@@ -31,7 +31,7 @@ Hash(Object v)
31
31
  inline size_t Rice::Hash::
32
32
  size() const
33
33
  {
34
- return (*this)->tbl->num_entries;
34
+ return RHASH_TBL(this->value())->num_entries;
35
35
  }
36
36
 
37
37
  inline Rice::Hash::Proxy::
@@ -145,9 +145,9 @@ swap(Rice::Hash::Entry & entry)
145
145
 
146
146
  template<typename Hash_Ref_T, typename Value_T>
147
147
  inline Rice::Hash::Iterator<Hash_Ref_T, Value_T>::
148
- Iterator(Hash_Ref_T hash, size_t bin, st_table_entry * ptr)
148
+ Iterator(Hash_Ref_T hash, st_data_t bin, st_table_entry * ptr)
149
149
  : hash_(hash)
150
- , tbl_(RHASH(hash.value())->tbl)
150
+ , tbl_(RHASH_TBL(hash.value()))
151
151
  , bin_(bin)
152
152
  , ptr_(ptr)
153
153
  , tmp_(hash, Qnil)
@@ -285,28 +285,28 @@ swap(Iterator& iterator)
285
285
  inline Rice::Hash::iterator Rice::Hash::
286
286
  begin()
287
287
  {
288
- st_table * tbl(RHASH(value())->tbl);
288
+ st_table * tbl(RHASH_TBL(value()));
289
289
  return iterator(*this, 0, tbl->bins[0]);
290
290
  }
291
291
 
292
292
  inline Rice::Hash::const_iterator Rice::Hash::
293
293
  begin() const
294
294
  {
295
- st_table * tbl(RHASH(value())->tbl);
295
+ st_table * tbl(RHASH_TBL(value()));
296
296
  return const_iterator(*this, 0, tbl->bins[0]);
297
297
  }
298
298
 
299
299
  inline Rice::Hash::iterator Rice::Hash::
300
300
  end()
301
301
  {
302
- st_table * tbl(RHASH(value())->tbl);
302
+ st_table * tbl(RHASH_TBL(value()));
303
303
  return iterator(*this, tbl->num_bins, 0);
304
304
  }
305
305
 
306
306
  inline Rice::Hash::const_iterator Rice::Hash::
307
307
  end() const
308
308
  {
309
- st_table * tbl(RHASH(value())->tbl);
309
+ st_table * tbl(RHASH_TBL(value()));
310
310
  return const_iterator(*this, tbl->num_bins, 0);
311
311
  }
312
312
 
data/rice/Makefile.am CHANGED
@@ -14,7 +14,8 @@ VM.cpp \
14
14
  detail/check_ruby_type.cpp \
15
15
  detail/demangle.cpp \
16
16
  detail/method_data.cpp \
17
- detail/protect.cpp
17
+ detail/protect.cpp \
18
+ detail/mininode.cpp
18
19
 
19
20
  nobase_include_HEADERS = \
20
21
  Address_Registration_Guard.hpp \
@@ -34,6 +35,7 @@ Critical_Guard.hpp \
34
35
  Critical_Guard.ipp \
35
36
  Data_Object.hpp \
36
37
  Data_Object.ipp \
38
+ Data_Object_defn.hpp \
37
39
  Data_Type.hpp \
38
40
  Data_Type.ipp \
39
41
  Data_Type_defn.hpp \
@@ -41,8 +43,10 @@ Data_Type_fwd.hpp \
41
43
  Enum.hpp \
42
44
  Enum.ipp \
43
45
  Exception.hpp \
46
+ Exception_defn.hpp \
44
47
  Exception_Base.hpp \
45
48
  Exception_Base.ipp \
49
+ Exception_Base_defn.hpp \
46
50
  Hash.hpp \
47
51
  Hash.ipp \
48
52
  Identifier.hpp \
@@ -73,13 +77,16 @@ ruby_try_catch.hpp \
73
77
  to_from_ruby.hpp \
74
78
  to_from_ruby.ipp \
75
79
  to_from_ruby_defn.hpp \
80
+ ruby_mark.hpp \
76
81
  detail/Auto_Function_Wrapper.hpp \
77
82
  detail/Auto_Function_Wrapper.ipp \
78
83
  detail/Auto_Member_Function_Wrapper.hpp \
79
84
  detail/Auto_Member_Function_Wrapper.ipp \
80
85
  detail/Caster.hpp \
81
86
  detail/Exception_Handler.hpp \
82
- detail/Iterator_Definer.hpp \
87
+ detail/Exception_Handler.ipp \
88
+ detail/Exception_Handler_defn.hpp \
89
+ detail/Iterator.hpp \
83
90
  detail/Not_Copyable.hpp \
84
91
  detail/Wrapped_Function.hpp \
85
92
  detail/check_ruby_type.hpp \
@@ -106,7 +113,8 @@ detail/to_ruby.hpp \
106
113
  detail/to_ruby.ipp \
107
114
  detail/win32.hpp \
108
115
  detail/wrap_function.hpp \
109
- detail/wrap_function.ipp
116
+ detail/wrap_function.ipp \
117
+ detail/ruby_version_code.hpp
110
118
 
111
119
  includedir = ${prefix}/include/rice
112
120
 
@@ -114,3 +122,12 @@ AM_CPPFLAGS = @RUBY_CPPFLAGS@
114
122
 
115
123
  AM_CXXFLAGS = @RUBY_CXXFLAGS@
116
124
 
125
+ detail/method_data.cpp: detail/method_data.cpp.rpp detail/mininode.hpp
126
+ ruby -C detail ../rubypp.rb method_data.cpp.rpp method_data.cpp
127
+
128
+ detail/mininode.cpp: detail/mininode.cpp.rpp
129
+ ruby -C detail ../rubypp.rb mininode.cpp.rpp mininode.cpp
130
+
131
+ detail/mininode.hpp: detail/mininode.hpp.rpp
132
+ ruby -C detail ../rubypp.rb mininode.hpp.rpp mininode.hpp
133
+
data/rice/Makefile.in CHANGED
@@ -61,7 +61,8 @@ am_librice_a_OBJECTS = Class.$(OBJEXT) Data_Type.$(OBJEXT) \
61
61
  Exception.$(OBJEXT) Identifier.$(OBJEXT) Module.$(OBJEXT) \
62
62
  Object.$(OBJEXT) String.$(OBJEXT) Struct.$(OBJEXT) \
63
63
  Symbol.$(OBJEXT) VM.$(OBJEXT) check_ruby_type.$(OBJEXT) \
64
- demangle.$(OBJEXT) method_data.$(OBJEXT) protect.$(OBJEXT)
64
+ demangle.$(OBJEXT) method_data.$(OBJEXT) protect.$(OBJEXT) \
65
+ mininode.$(OBJEXT)
65
66
  librice_a_OBJECTS = $(am_librice_a_OBJECTS)
66
67
  DEFAULT_INCLUDES = -I.@am__isrc@
67
68
  depcomp = $(SHELL) $(top_srcdir)/depcomp
@@ -141,6 +142,7 @@ PATH_SEPARATOR = @PATH_SEPARATOR@
141
142
  RANLIB = @RANLIB@
142
143
  RICE_CPPFLAGS = @RICE_CPPFLAGS@
143
144
  RICE_LDFLAGS = @RICE_LDFLAGS@
145
+ RICE_ROOT = @RICE_ROOT@
144
146
  RICE_SAMPLES = @RICE_SAMPLES@
145
147
  RICE_USING_MINGW32 = @RICE_USING_MINGW32@
146
148
  RUBY = @RUBY@
@@ -152,6 +154,7 @@ RUBY_LIBRUBYARG = @RUBY_LIBRUBYARG@
152
154
  RUBY_LIBRUBYARG_STATIC = @RUBY_LIBRUBYARG_STATIC@
153
155
  RUBY_LIBS = @RUBY_LIBS@
154
156
  RUBY_SITELIBDIR = @RUBY_SITELIBDIR@
157
+ RUBY_VERSION_CODE = @RUBY_VERSION_CODE@
155
158
  SET_MAKE = @SET_MAKE@
156
159
  SHELL = @SHELL@
157
160
  STRIP = @STRIP@
@@ -220,7 +223,8 @@ VM.cpp \
220
223
  detail/check_ruby_type.cpp \
221
224
  detail/demangle.cpp \
222
225
  detail/method_data.cpp \
223
- detail/protect.cpp
226
+ detail/protect.cpp \
227
+ detail/mininode.cpp
224
228
 
225
229
  nobase_include_HEADERS = \
226
230
  Address_Registration_Guard.hpp \
@@ -240,6 +244,7 @@ Critical_Guard.hpp \
240
244
  Critical_Guard.ipp \
241
245
  Data_Object.hpp \
242
246
  Data_Object.ipp \
247
+ Data_Object_defn.hpp \
243
248
  Data_Type.hpp \
244
249
  Data_Type.ipp \
245
250
  Data_Type_defn.hpp \
@@ -247,8 +252,10 @@ Data_Type_fwd.hpp \
247
252
  Enum.hpp \
248
253
  Enum.ipp \
249
254
  Exception.hpp \
255
+ Exception_defn.hpp \
250
256
  Exception_Base.hpp \
251
257
  Exception_Base.ipp \
258
+ Exception_Base_defn.hpp \
252
259
  Hash.hpp \
253
260
  Hash.ipp \
254
261
  Identifier.hpp \
@@ -279,13 +286,16 @@ ruby_try_catch.hpp \
279
286
  to_from_ruby.hpp \
280
287
  to_from_ruby.ipp \
281
288
  to_from_ruby_defn.hpp \
289
+ ruby_mark.hpp \
282
290
  detail/Auto_Function_Wrapper.hpp \
283
291
  detail/Auto_Function_Wrapper.ipp \
284
292
  detail/Auto_Member_Function_Wrapper.hpp \
285
293
  detail/Auto_Member_Function_Wrapper.ipp \
286
294
  detail/Caster.hpp \
287
295
  detail/Exception_Handler.hpp \
288
- detail/Iterator_Definer.hpp \
296
+ detail/Exception_Handler.ipp \
297
+ detail/Exception_Handler_defn.hpp \
298
+ detail/Iterator.hpp \
289
299
  detail/Not_Copyable.hpp \
290
300
  detail/Wrapped_Function.hpp \
291
301
  detail/check_ruby_type.hpp \
@@ -312,7 +322,8 @@ detail/to_ruby.hpp \
312
322
  detail/to_ruby.ipp \
313
323
  detail/win32.hpp \
314
324
  detail/wrap_function.hpp \
315
- detail/wrap_function.ipp
325
+ detail/wrap_function.ipp \
326
+ detail/ruby_version_code.hpp
316
327
 
317
328
  AM_CPPFLAGS = @RUBY_CPPFLAGS@
318
329
  AM_CXXFLAGS = @RUBY_CXXFLAGS@
@@ -420,6 +431,7 @@ distclean-compile:
420
431
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_ruby_type.Po@am__quote@
421
432
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/demangle.Po@am__quote@
422
433
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/method_data.Po@am__quote@
434
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mininode.Po@am__quote@
423
435
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/protect.Po@am__quote@
424
436
 
425
437
  .cpp.o:
@@ -491,6 +503,20 @@ protect.obj: detail/protect.cpp
491
503
  @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='detail/protect.cpp' object='protect.obj' libtool=no @AMDEPBACKSLASH@
492
504
  @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
493
505
  @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o protect.obj `if test -f 'detail/protect.cpp'; then $(CYGPATH_W) 'detail/protect.cpp'; else $(CYGPATH_W) '$(srcdir)/detail/protect.cpp'; fi`
506
+
507
+ mininode.o: detail/mininode.cpp
508
+ @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT mininode.o -MD -MP -MF $(DEPDIR)/mininode.Tpo -c -o mininode.o `test -f 'detail/mininode.cpp' || echo '$(srcdir)/'`detail/mininode.cpp
509
+ @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/mininode.Tpo $(DEPDIR)/mininode.Po
510
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='detail/mininode.cpp' object='mininode.o' libtool=no @AMDEPBACKSLASH@
511
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
512
+ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o mininode.o `test -f 'detail/mininode.cpp' || echo '$(srcdir)/'`detail/mininode.cpp
513
+
514
+ mininode.obj: detail/mininode.cpp
515
+ @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT mininode.obj -MD -MP -MF $(DEPDIR)/mininode.Tpo -c -o mininode.obj `if test -f 'detail/mininode.cpp'; then $(CYGPATH_W) 'detail/mininode.cpp'; else $(CYGPATH_W) '$(srcdir)/detail/mininode.cpp'; fi`
516
+ @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/mininode.Tpo $(DEPDIR)/mininode.Po
517
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='detail/mininode.cpp' object='mininode.obj' libtool=no @AMDEPBACKSLASH@
518
+ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
519
+ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o mininode.obj `if test -f 'detail/mininode.cpp'; then $(CYGPATH_W) 'detail/mininode.cpp'; else $(CYGPATH_W) '$(srcdir)/detail/mininode.cpp'; fi`
494
520
  install-nobase_includeHEADERS: $(nobase_include_HEADERS)
495
521
  @$(NORMAL_INSTALL)
496
522
  test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
@@ -689,6 +715,15 @@ uninstall-am: uninstall-libLIBRARIES uninstall-nobase_includeHEADERS
689
715
  uninstall-am uninstall-libLIBRARIES \
690
716
  uninstall-nobase_includeHEADERS
691
717
 
718
+
719
+ detail/method_data.cpp: detail/method_data.cpp.rpp detail/mininode.hpp
720
+ ruby -C detail ../rubypp.rb method_data.cpp.rpp method_data.cpp
721
+
722
+ detail/mininode.cpp: detail/mininode.cpp.rpp
723
+ ruby -C detail ../rubypp.rb mininode.cpp.rpp mininode.cpp
724
+
725
+ detail/mininode.hpp: detail/mininode.hpp.rpp
726
+ ruby -C detail ../rubypp.rb mininode.hpp.rpp mininode.hpp
692
727
  # Tell versions [3.59,3.63) of GNU make to not export all variables.
693
728
  # Otherwise a system limit (for SysV at least) may be exceeded.
694
729
  .NOEXPORT: