Silly gcc was complaining about static initializers when
compiling in C. Code was now moved to initialization and variables were prefixed with swig_*. git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9925 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
94323e0d52
commit
8f6e08dcb5
1 changed files with 7 additions and 6 deletions
|
|
@ -77,7 +77,8 @@ typedef struct {
|
||||||
|
|
||||||
static VALUE _cSWIG_Pointer = Qnil;
|
static VALUE _cSWIG_Pointer = Qnil;
|
||||||
static VALUE swig_runtime_data_type_pointer = Qnil;
|
static VALUE swig_runtime_data_type_pointer = Qnil;
|
||||||
|
static VALUE swig_arity_id = Qnil;
|
||||||
|
static VALUE swig_call_id = Qnil;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
If your swig extension is to be run within an embedded ruby and has
|
If your swig extension is to be run within an embedded ruby and has
|
||||||
|
|
@ -140,6 +141,8 @@ SWIG_Ruby_InitRuntime(void)
|
||||||
{
|
{
|
||||||
if (_mSWIG == Qnil) {
|
if (_mSWIG == Qnil) {
|
||||||
_mSWIG = rb_define_module("SWIG");
|
_mSWIG = rb_define_module("SWIG");
|
||||||
|
swig_call_id = rb_intern("call");
|
||||||
|
swig_arity_id = rb_intern("arity");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -404,8 +407,7 @@ SWIG_Ruby_SetModule(swig_module_info *pointer)
|
||||||
SWIGINTERN
|
SWIGINTERN
|
||||||
int SWIG_Ruby_isCallable( VALUE proc )
|
int SWIG_Ruby_isCallable( VALUE proc )
|
||||||
{
|
{
|
||||||
static VALUE call_id = rb_intern("call");
|
if ( rb_respond_to( proc, swig_call_id ) == Qtrue )
|
||||||
if ( rb_respond_to( proc, call_id ) == Qtrue )
|
|
||||||
return 1;
|
return 1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
@ -418,10 +420,9 @@ int SWIG_Ruby_isCallable( VALUE proc )
|
||||||
SWIGINTERN
|
SWIGINTERN
|
||||||
int SWIG_Ruby_arity( VALUE proc, int minimal )
|
int SWIG_Ruby_arity( VALUE proc, int minimal )
|
||||||
{
|
{
|
||||||
static VALUE arity_id = rb_intern("arity");
|
if ( rb_respond_to( proc, swig_arity_id ) == Qtrue )
|
||||||
if ( rb_respond_to( proc, arity_id ) == Qtrue )
|
|
||||||
{
|
{
|
||||||
VALUE num = rb_funcall( proc, arity_id, 0 );
|
VALUE num = rb_funcall( proc, swig_arity_id, 0 );
|
||||||
int arity = NUM2INT(num);
|
int arity = NUM2INT(num);
|
||||||
if ( arity < 0 && (arity+1) < -minimal ) return 1;
|
if ( arity < 0 && (arity+1) < -minimal ) return 1;
|
||||||
if ( arity == minimal ) return 1;
|
if ( arity == minimal ) return 1;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue