rice 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: