You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.8 KiB
62 lines
1.8 KiB
/* ------------------------------------------------------------ |
|
* Typemap specializations for Ruby |
|
* ------------------------------------------------------------ */ |
|
/* ------------------------------------------------------------ |
|
* Fragment section |
|
* ------------------------------------------------------------ */ |
|
/* bool is dangerous in Ruby, change precedence */ |
|
#undef SWIG_TYPECHECK_BOOL |
|
%define SWIG_TYPECHECK_BOOL 10000 %enddef |
|
|
|
/* Include fundamental fragemt definitions */ |
|
%include <typemaps/fragments.swg> |
|
|
|
/* Look for user fragments file. */ |
|
%include <rubyfragments.swg> |
|
|
|
/* Ruby fragments for primitive types */ |
|
%include <rubyprimtypes.swg> |
|
|
|
/* Ruby fragments for char* strings */ |
|
%include <rubystrings.swg> |
|
|
|
/* Backward compatibility output helper */ |
|
%fragment("output_helper","header") %{ |
|
#define output_helper SWIG_Ruby_AppendOutput |
|
%} |
|
|
|
/* ------------------------------------------------------------ |
|
* Unified typemap section |
|
* ------------------------------------------------------------ */ |
|
|
|
/* Directors are supported in Ruby */ |
|
#ifndef SWIG_DIRECTOR_TYPEMAPS |
|
#define SWIG_DIRECTOR_TYPEMAPS |
|
#endif |
|
|
|
|
|
/* Ruby types */ |
|
#define SWIG_Object VALUE |
|
#define VOID_Object Qnil |
|
|
|
/* Overload of the output/constant/exception handling */ |
|
|
|
/* append output */ |
|
#define SWIG_AppendOutput(result,obj) SWIG_Ruby_AppendOutput(result, obj) |
|
|
|
/* set constant */ |
|
#define SWIG_SetConstant(name, obj) rb_define_const($module, name, obj) |
|
|
|
/* raise */ |
|
#define SWIG_Raise(obj, type, desc) rb_exc_raise(SWIG_Ruby_ExceptionType(desc, obj)) |
|
|
|
/* Get the address of the 'Ruby self' object */ |
|
|
|
%typemap(in,numinputs=0,noblock=1) VALUE* RUBY_SELF { |
|
$1 = &self; |
|
} |
|
|
|
/* Include the unified typemap library */ |
|
%include <typemaps/swigtypemaps.swg> |
|
|
|
|
|
|