added qse_awk_pushecb()/qse_awk_popecb()/qse_sed_pushecb()/qse_sed_popecb()/qse_httpd_pushecb()/qse_httpd_popecb().

started reorganizing samples/httpd01 to net/httpd-std.c
This commit is contained in:
2012-09-07 15:13:55 +00:00
parent 69b118fcbf
commit ea3ebef8f1
16 changed files with 1930 additions and 64 deletions

View File

@ -75,6 +75,11 @@ qse_sed_t* qse_sed_open (qse_mmgr_t* mmgr, qse_size_t xtnsize)
void qse_sed_close (qse_sed_t* sed)
{
qse_sed_ecb_t* ecb;
for (ecb = sed->ecb; ecb; ecb = ecb->next)
if (ecb->close) ecb->close (sed);
qse_sed_fini (sed);
QSE_MMGR_FREE (sed->mmgr, sed);
}
@ -4142,6 +4147,19 @@ void qse_sed_setlinenum (qse_sed_t* sed, qse_size_t num)
sed->e.in.num = num;
}
qse_sed_ecb_t* qse_sed_popecb (qse_sed_t* sed)
{
qse_sed_ecb_t* top = sed->ecb;
if (top) sed->ecb = top->next;
return top;
}
void qse_sed_pushecb (qse_sed_t* sed, qse_sed_ecb_t* ecb)
{
ecb->next = sed->ecb;
sed->ecb = ecb;
}
#ifdef QSE_ENABLE_SEDTRACER
qse_sed_exec_tracer_t qse_sed_getexectracer (qse_sed_t* sed)
{

View File

@ -99,6 +99,8 @@ struct qse_sed_t
} rex;
} depth;
qse_sed_ecb_t* ecb;
/** source text pointers */
struct
{