8 #define fix(s) ((s) ? (s) : "")     16 #define new_pv(a) newSVpv(fix(a), xstrlen(a))    19     ((o) && SvROK(o) && SvRV(o) && (SvTYPE(SvRV(o)) == SVt_PVHV))    22     (is_hvref(o) ? (HV *)SvRV(o) : NULL)    26 #define PERL_HANDLER_HEADER(x) \    27     char *fullproc, *error; \    28     int perl_retcount, ret = 0;\    31     fullproc = saprintf("Ekg2::Script::%s::%s", scr->name,  x);\    47 #undef PERL_HANDLER_FOOTER    49 #ifdef PERL_RESTORE_ARGS    50 #define RESTORE_ARGS(x)\    52     for (i=0; i < scr_que->argc; i++) {\    53         if (scr_que->argv_type[i] & QUERY_ARG_CONST)\    55         switch ( scr_que->argv_type[i] & QUERY_ARG_TYPES ) {\    56             case (QUERY_ARG_INT):\    57                 *( (int *) args[i]) = SvIV(SvRV(perlargs[i]));\    60             case (QUERY_ARG_CHARP):\    62                 char *retarg = xstrdup( SvPV_nolen(SvRV(perlargs[i])) ); \    63                 if ( xstrcmp(retarg, *( (char **) args[i])) ) {\    64                     xfree(*(char **) args[i]);  \    65                     *( (char **) args[i]) =  retarg;\    70             case (QUERY_ARG_CHARPP): \    78 #define RESTORE_ARGS(x) ;    81 #define PERL_HANDLER_FOOTER()\    84         perl_retcount = perl_call_pv(fullproc, G_EVAL);\    87             error = SvPV(ERRSV, PL_na);\    88             print("script_error", error);\    89             ret = SCRIPT_HANDLE_UNBIND;\    91         else if (perl_retcount > 0)\    94             ret = SvIV(perl_ret);\   103         if (ret < 0) return -1;\ int perl_initialize()
Definition: perl_core.c:229
 
SV * create_sv_ptr(void *object)
Definition: perl_core.c:273
 
int perl_finalize()
Definition: perl_core.c:371