#ifndef Rice__protect__hpp_ #define Rice__protect__hpp_ // This is a generated file. DO NOT EDIT!! // This causes problems with certain C++ libraries #undef TYPE #include "Object_defn.hpp" namespace Rice { #ifdef DOXYGEN /*! \file * \brief A collection of functions (overloaded on number of * arguments) for calling C functions that might raise Ruby exceptions. */ //! Call the C function f with arguments (arg1, arg2, ...). /*! E.g.: * \code * VALUE x = protect(rb_ary_new); * protect(rb_ary_push(x, INT2NUM(42)); * \endcode * * Note that this function makes copies of all of its arguments; it * does not take anything by reference. All of the copies are const so * that protect will not work if f takes a non-const * reference to any of its arguments (though you can use non-const * pointers). */ VALUE protect(Function f, T1 arg1, T2 arg2, ...); #else template VALUE protect(Fun fun); template VALUE protect(Fun fun, T1 const & t1); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7, T8 const & t8); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7, T8 const & t8, T9 const & t9); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7, T8 const & t8, T9 const & t9, T10 const & t10); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7, T8 const & t8, T9 const & t9, T10 const & t10, T11 const & t11); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7, T8 const & t8, T9 const & t9, T10 const & t10, T11 const & t11, T12 const & t12); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7, T8 const & t8, T9 const & t9, T10 const & t10, T11 const & t11, T12 const & t12, T13 const & t13); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7, T8 const & t8, T9 const & t9, T10 const & t10, T11 const & t11, T12 const & t12, T13 const & t13, T14 const & t14); template VALUE protect(Fun fun, T1 const & t1, T2 const & t2, T3 const & t3, T4 const & t4, T5 const & t5, T6 const & t6, T7 const & t7, T8 const & t8, T9 const & t9, T10 const & t10, T11 const & t11, T12 const & t12, T13 const & t13, T14 const & t14, T15 const & t15); #endif // DOXYGEN } // namespace Rice #include "protect.ipp" #endif // Rice__protect__hpp_