################################################################################ ## ## $Revision: 4 $ ## $Author: mhx $ ## $Date: 2010/03/07 13:15:44 +0100 $ ## ################################################################################ ## ## Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz. ## Version 2.x, Copyright (C) 2001, Paul Marquess. ## Version 1.x, Copyright (C) 1999, Kenneth Albanowski. ## ## This program is free software; you can redistribute it and/or ## modify it under the same terms as Perl itself. ## ################################################################################ =provides __UNDEFINED__ =implementation __UNDEFINED__ GvSVn(gv) GvSV(gv) __UNDEFINED__ isGV_with_GP(gv) isGV(gv) __UNDEFINED__ gv_fetchpvn_flags(name, len, flags, svt) gv_fetchpv(name, flags, svt) __UNDEFINED__ gv_fetchsv(name, flags, svt) gv_fetchpv(SvPV_nolen_const(name), flags, svt) __UNDEFINED__ get_cvn_flags(name, namelen, flags) get_cv(name, flags) =xsubs int GvSVn() PREINIT: GV* gv; CODE: RETVAL = 0; gv = gv_fetchpvs("Devel::PPPort::GvTest", GV_ADDMULTI, SVt_PVGV); if (GvSVn(gv) != NULL) { RETVAL++; } OUTPUT: RETVAL int isGV_with_GP() PREINIT: GV* gv; CODE: RETVAL = 0; gv = gv_fetchpvs("Devel::PPPort::GvTest", GV_ADDMULTI, SVt_PVGV); if (isGV_with_GP(gv)) { RETVAL++; } if (!isGV(&PL_sv_undef)) { RETVAL++; } OUTPUT: RETVAL int get_cvn_flags() PREINIT: CV* xv; CODE: RETVAL = 0; xv = get_cvn_flags("Devel::PPPort::foobar", sizeof("Devel::PPPort::foobar")-1, 0); if(xv == NULL) RETVAL++; xv = get_cvn_flags("Devel::PPPort::foobar", sizeof("Devel::PPPort::foobar")-1, GV_ADDMULTI); if(xv && SvTYPE(xv) == SVt_PVCV) RETVAL++; xv = get_cvn_flags("Devel::PPPort::get_cvn_flags", sizeof("Devel::PPPort::get_cvn_flags")-1, 0); if(xv && SvTYPE(xv) == SVt_PVCV) RETVAL++; OUTPUT: RETVAL SV* gv_fetchpvn_flags() CODE: RETVAL = newRV_inc((SV*)gv_fetchpvn_flags("Devel::PPPort::VERSION", sizeof("Devel::PPPort::VERSION")-1, 0, SVt_PV)); OUTPUT: RETVAL SV* gv_fetchsv(name) SV *name CODE: RETVAL = newRV_inc((SV*)gv_fetchsv(name, 0, SVt_PV)); OUTPUT: RETVAL =tests plan => 5 ok(Devel::PPPort::GvSVn(), 1); ok(Devel::PPPort::isGV_with_GP(), 2); ok(Devel::PPPort::get_cvn_flags(), 3); ok(Devel::PPPort::gv_fetchpvn_flags(), \*Devel::PPPort::VERSION); ok(Devel::PPPort::gv_fetchsv("Devel::PPPort::VERSION"), \*Devel::PPPort::VERSION);