Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

Exc_Ruby::Exception_Safe_Ruby_Data_Wrapper< T > Struct Template Reference

#include <ruby_reference.hpp>

List of all members.

Public Types

typedef void(* Ruby_Data_Func )(T *obj)
 A function that takes a T* and returns void.


Static Public Member Functions

VALUE wrap (VALUE klass, Ruby_Data_Func mark, Ruby_Data_Func free, T *obj)
T * unwrap (VALUE value)


Detailed Description

template<typename T>
struct Exc_Ruby::Exception_Safe_Ruby_Data_Wrapper< T >

Like Fast_Ruby_Data_Wrapper, but uses C++ exceptions instead of Ruby exceptions.


Member Function Documentation

template<typename T>
T* Exc_Ruby::Exception_Safe_Ruby_Data_Wrapper< T >::unwrap VALUE  value  )  [static]
 

Equivalent to Data_Get_Struct, but if Data_Get_Struct raises an exception, it gets converted to a C++ exception.

template<typename T>
VALUE Exc_Ruby::Exception_Safe_Ruby_Data_Wrapper< T >::wrap VALUE  klass,
Ruby_Data_Func  mark,
Ruby_Data_Func  free,
T *  obj
[static]
 

Equivalent to Data_Wrap_Struct, but if Data_Wrap_Struct raises an exception, it gets converted to a C++ exception.


The documentation for this struct was generated from the following file:
Generated on Sat Jan 1 12:02:26 2005 for Exceptional Ruby by doxygen 1.3.6