TYPEMAP
PostgresPollingStatusType T_MY_ENUM
ConnStatusType T_MY_ENUM
PGTransactionStatusType T_MY_ENUM
ExecStatusType T_MY_ENUM
PGVerbosity T_MY_ENUM
PGconn * T_PGCONN
PGresult * T_PGRESULT
PGcancel * T_PGCANCEL
Oid T_OID
char * T_UTF8
INPUT
T_PGCONN
$var = INT2PTR($type, SvIV((SV*)SvRV($arg)));
if (!$var) Perl_croak(aTHX_ \"Null pointer error\");
T_PGRESULT
$var = INT2PTR($type, SvIV((SV*)SvRV($arg)));
if (!$var) Perl_croak(aTHX_ \"Null pointer error\");
T_PGCANCEL
$var = INT2PTR($type, SvIV((SV*)SvRV($arg)));
if (!$var) Perl_croak(aTHX_ \"Null pointer error\");
T_MY_ENUM
$var = SvIV($arg);
T_UTF8
$var = SvPVutf8_nolen($arg);
T_OID
$var = (SvOK($arg) ? SvIV($arg) : InvalidOid);
OUTPUT
T_PGCONN
if ($var)
sv_setref_pv($arg, \"Pg::PQ::Conn\", (void*)$var);
else
sv_setsv($arg, &PL_sv_undef);
T_PGRESULT
if ($var)
sv_setref_pv($arg, \"Pg::PQ::Result\", (void*)$var);
else
sv_setsv($arg, &PL_sv_undef);
T_PGCANCEL
if ($var)
sv_setref_pv($arg, \"Pg::PQ::Cancel\", (void*)$var);
else
sv_setsv($arg, &PL_sv_undef);
T_MY_ENUM
$arg = ${ntype}2sv($var);
T_UTF8
$arg = my_newSVpv_utf8(aTHX_ ($var));
T_OID
$arg = (($var == InvalidOid) ? &PL_sv_undef : newSViv($var));