/*
* *********** WARNING **************
* This file generated by Embperl::WrapXS/2.0.0
* Any changes made here will be lost
* ***********************************
* 1. /usr/share/perl5/ExtUtils/XSBuilder/WrapXS.pm:52
* 2. /usr/share/perl5/ExtUtils/XSBuilder/WrapXS.pm:2070
* 3. xsbuilder/xs_generate.pl:6
*/
#include "ep.h"
#include "epmacro.h"
#include "epdat2.h"
#include "eppublic.h"
#include "eptypes.h"
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"
#include "ep_xs_sv_convert.h"
#include "ep_xs_typedefs.h"
void Embperl__Thread_destroy (pTHX_ Embperl__Thread obj) {
if (obj -> pApplications)
SvREFCNT_dec(obj -> pApplications);
if (obj -> pEnvHash)
SvREFCNT_dec(obj -> pEnvHash);
if (obj -> pFormHash)
SvREFCNT_dec(obj -> pFormHash);
if (obj -> pFormSplitHash)
SvREFCNT_dec(obj -> pFormSplitHash);
if (obj -> pInputHash)
SvREFCNT_dec(obj -> pInputHash);
if (obj -> pFormArray)
SvREFCNT_dec(obj -> pFormArray);
if (obj -> pHeaderHash)
SvREFCNT_dec(obj -> pHeaderHash);
};
void Embperl__Thread_new_init (pTHX_ Embperl__Thread obj, SV * item, int overwrite) {
SV * * tmpsv ;
if (SvTYPE(item) == SVt_PVMG)
memcpy (obj, (void *)SvIVX(item), sizeof (*obj)) ;
else if (SvTYPE(item) == SVt_PVHV) {
if ((tmpsv = hv_fetch((HV *)item, "applications", sizeof("applications") - 1, 0)) || overwrite) {
HV * tmpobj = ((HV *)epxs_sv2_HVREF((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)));
if (tmpobj)
obj -> pApplications = (HV *)SvREFCNT_inc(tmpobj);
else
obj -> pApplications = NULL ;
}
if ((tmpsv = hv_fetch((HV *)item, "curr_req", sizeof("curr_req") - 1, 0)) || overwrite) {
obj -> pCurrReq = (struct tReq *)epxs_sv2_Embperl__Req((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)) ;
}
if ((tmpsv = hv_fetch((HV *)item, "pid", sizeof("pid") - 1, 0)) || overwrite) {
obj -> nPid = (pid_t)epxs_sv2_IV((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)) ;
}
if ((tmpsv = hv_fetch((HV *)item, "env_hash", sizeof("env_hash") - 1, 0)) || overwrite) {
HV * tmpobj = ((HV *)epxs_sv2_HVREF((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)));
if (tmpobj)
obj -> pEnvHash = (HV *)SvREFCNT_inc(tmpobj);
else
obj -> pEnvHash = NULL ;
}
if ((tmpsv = hv_fetch((HV *)item, "form_hash", sizeof("form_hash") - 1, 0)) || overwrite) {
HV * tmpobj = ((HV *)epxs_sv2_HVREF((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)));
if (tmpobj)
obj -> pFormHash = (HV *)SvREFCNT_inc(tmpobj);
else
obj -> pFormHash = NULL ;
}
if ((tmpsv = hv_fetch((HV *)item, "form_split_hash", sizeof("form_split_hash") - 1, 0)) || overwrite) {
HV * tmpobj = ((HV *)epxs_sv2_HVREF((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)));
if (tmpobj)
obj -> pFormSplitHash = (HV *)SvREFCNT_inc(tmpobj);
else
obj -> pFormSplitHash = NULL ;
}
if ((tmpsv = hv_fetch((HV *)item, "input_hash", sizeof("input_hash") - 1, 0)) || overwrite) {
HV * tmpobj = ((HV *)epxs_sv2_HVREF((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)));
if (tmpobj)
obj -> pInputHash = (HV *)SvREFCNT_inc(tmpobj);
else
obj -> pInputHash = NULL ;
}
if ((tmpsv = hv_fetch((HV *)item, "form_array", sizeof("form_array") - 1, 0)) || overwrite) {
AV * tmpobj = ((AV *)epxs_sv2_AVREF((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)));
if (tmpobj)
obj -> pFormArray = (AV *)SvREFCNT_inc(tmpobj);
else
obj -> pFormArray = NULL ;
}
if ((tmpsv = hv_fetch((HV *)item, "header_hash", sizeof("header_hash") - 1, 0)) || overwrite) {
HV * tmpobj = ((HV *)epxs_sv2_HVREF((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)));
if (tmpobj)
obj -> pHeaderHash = (HV *)SvREFCNT_inc(tmpobj);
else
obj -> pHeaderHash = NULL ;
}
; }
else
croak ("initializer for Embperl::Thread::new is not a hash or object reference") ;
} ;
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
HV *
applications(obj, val=NULL)
Embperl::Thread obj
HV * val
PREINIT:
/*nada*/
CODE:
RETVAL = (HV *) obj->pApplications;
if (items > 1) {
obj->pApplications = (HV *)SvREFCNT_inc(val);
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
Embperl::Req
curr_req(obj, val=NULL)
Embperl::Thread obj
Embperl::Req val
PREINIT:
/*nada*/
CODE:
RETVAL = (Embperl__Req) obj->pCurrReq;
if (items > 1) {
obj->pCurrReq = (Embperl__Req) val;
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
pid_t
pid(obj, val=0)
Embperl::Thread obj
pid_t val
PREINIT:
/*nada*/
CODE:
RETVAL = (pid_t) obj->nPid;
if (items > 1) {
obj->nPid = (pid_t) val;
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
HV *
env_hash(obj, val=NULL)
Embperl::Thread obj
HV * val
PREINIT:
/*nada*/
CODE:
RETVAL = (HV *) obj->pEnvHash;
if (items > 1) {
obj->pEnvHash = (HV *)SvREFCNT_inc(val);
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
HV *
form_hash(obj, val=NULL)
Embperl::Thread obj
HV * val
PREINIT:
/*nada*/
CODE:
RETVAL = (HV *) obj->pFormHash;
if (items > 1) {
obj->pFormHash = (HV *)SvREFCNT_inc(val);
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
HV *
form_split_hash(obj, val=NULL)
Embperl::Thread obj
HV * val
PREINIT:
/*nada*/
CODE:
RETVAL = (HV *) obj->pFormSplitHash;
if (items > 1) {
obj->pFormSplitHash = (HV *)SvREFCNT_inc(val);
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
HV *
input_hash(obj, val=NULL)
Embperl::Thread obj
HV * val
PREINIT:
/*nada*/
CODE:
RETVAL = (HV *) obj->pInputHash;
if (items > 1) {
obj->pInputHash = (HV *)SvREFCNT_inc(val);
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
AV *
form_array(obj, val=NULL)
Embperl::Thread obj
AV * val
PREINIT:
/*nada*/
CODE:
RETVAL = (AV *) obj->pFormArray;
if (items > 1) {
obj->pFormArray = (AV *)SvREFCNT_inc(val);
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
HV *
header_hash(obj, val=NULL)
Embperl::Thread obj
HV * val
PREINIT:
/*nada*/
CODE:
RETVAL = (HV *) obj->pHeaderHash;
if (items > 1) {
obj->pHeaderHash = (HV *)SvREFCNT_inc(val);
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
SV *
new (class,initializer=NULL)
char * class
SV * initializer
PREINIT:
SV * svobj ;
Embperl__Thread cobj ;
SV * tmpsv ;
CODE:
epxs_Embperl__Thread_create_obj(cobj,svobj,RETVAL,malloc(sizeof(*cobj))) ;
if (initializer) {
if (!SvROK(initializer) || !(tmpsv = SvRV(initializer)))
croak ("initializer for Embperl::Thread::new is not a reference") ;
if (SvTYPE(tmpsv) == SVt_PVHV || SvTYPE(tmpsv) == SVt_PVMG)
Embperl__Thread_new_init (aTHX_ cobj, tmpsv, 0) ;
else if (SvTYPE(tmpsv) == SVt_PVAV) {
int i ;
SvGROW(svobj, sizeof (*cobj) * av_len((AV *)tmpsv)) ;
for (i = 0; i <= av_len((AV *)tmpsv); i++) {
SV * * itemrv = av_fetch((AV *)tmpsv, i, 0) ;
SV * item ;
if (!itemrv || !*itemrv || !SvROK(*itemrv) || !(item = SvRV(*itemrv)))
croak ("array element of initializer for Embperl::Thread::new is not a reference") ;
Embperl__Thread_new_init (aTHX_ &cobj[i], item, 1) ;
}
}
else {
croak ("initializer for Embperl::Thread::new is not a hash/array/object reference") ;
}
}
OUTPUT:
RETVAL
MODULE = Embperl::Thread PACKAGE = Embperl::Thread
void
DESTROY (obj)
Embperl::Thread obj
CODE:
Embperl__Thread_destroy (aTHX_ obj) ;
PROTOTYPES: disabled
BOOT:
items = items; /* -Wall */