X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=xs-src%2FMouseUtil.xs;h=4aa3c1cd81d160ed719886814b2f469291107f34;hb=dfbc05003792a24ba9d4212c49c63f437e519119;hp=b1b4f050ee21cce02e5fee6216dea813b94b27fb;hpb=441964ce2aaf63287281b9084b131ecb124a3405;p=gitmo%2FMouse.git diff --git a/xs-src/MouseUtil.xs b/xs-src/MouseUtil.xs index b1b4f05..4aa3c1c 100644 --- a/xs-src/MouseUtil.xs +++ b/xs-src/MouseUtil.xs @@ -112,31 +112,6 @@ mouse_throw_error(SV* const metaobject, SV* const data /* not used */, const cha } } - -/* equivalent to "blessed($x) && $x->isa($klass)" */ -bool -mouse_is_instance_of(pTHX_ SV* const sv, SV* const klass){ - assert(sv); - assert(klass); - - if(IsObject(sv) && SvOK(klass)){ - bool ok; - - ENTER; - SAVETMPS; - - ok = SvTRUEx(mcall1s(sv, "isa", klass)); - - FREETMPS; - LEAVE; - - return ok; - } - - return FALSE; -} - - bool mouse_is_class_loaded(pTHX_ SV * const klass){ HV *stash; @@ -332,7 +307,7 @@ PPCODE: name_pv = SvPV_nolen_const(predicate_name); } - xsub = generate_isa_predicate_for(aTHX_ klass, name_pv); + xsub = mouse_generate_isa_predicate_for(aTHX_ klass, name_pv); if(predicate_name == NULL){ /* anonymous predicate */ XPUSHs( newRV_noinc((SV*)xsub) );