|
NAMEkxml_push , kxml_pushattrs
—
open an element scope for kcgixml
LIBRARYlibrary “libkcgixml”SYNOPSIS#include <sys/types.h>
#include <stdarg.h>
#include <stdint.h>
#include <kcgi.h>
#include <kcgixml.h>
enum kcgi_err
enum kcgi_err
DESCRIPTIONOpen a new scope of element index elem on the current element stack of req, initialised with kxml_open(3). The element must be in the element array passed to kxml_open(3). Scopes are closed with kxml_popall(3), kxml_pop(3). or kxml_close(3).The RETURN VALUESReturns an enum kcgi_err indicating the error state.
EXAMPLESThe following outputs a simple XML page. It assumes r is a struct kreq pointer. For brevity, it does not do any error checking.const char *const elems[] = { "foo", "bar", "baz" }; khttp_head(r, kresps[KRESP_STATUS], "%s", khttps[KHTTP_200]); khttp_head(r, kresps[KRESP_CONTENT_TYPE], "%s", kmimetypes[KMIME_TEXT_XML]); khttp_body(r); kxml_open(&req, r, elems, 3); kxml_push(&req, 0); /* foo */ kxml_puts(&req, "Hello, world"); kxml_pop(&req); kxml_pushattrs(&req, 1, "baz", "xyzzy", NULL); /* bar */ kxml_puts(&req, "Hello, world"); kxml_pop(&req); kxml_close(&req); SEE ALSOkcgixml(3)AUTHORSWritten by Kristaps Dzonsons <kristaps@bsd.lv>.
Visit the GSP FreeBSD Man Page Interface. |