TYPEMAP const char * T_PV shout_t * O_OBJECT shout_metadata_t * T_PTRREF OUTPUT O_OBJECT sv_setref_pv($arg, CLASS, (void *)$var); INPUT O_OBJECT if (sv_isobject($arg) && (SvTYPE(SvRV($arg)) == SVt_PVMG)) $var = ($type)SvIV((SV *)SvRV($arg)); else { warn(\"${Package}::$func_name() -- $var is not a blessed SV reference\"); XSRETURN_UNDEF; }