Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
KHTML_ELEMAT(3)		    Library Functions Manual	       KHTML_ELEMAT(3)

NAME
       khtml_elemat -- get element stack depth of kcgihtml

LIBRARY
       library "libkcgihtml"

SYNOPSIS
       #include	<sys/types.h>
       #include	<stdarg.h>
       #include	<stdint.h>
       #include	<kcgi.h>
       #include	<kcgihtml.h>

       size_t
       khtml_elemat(const struct khtmlreq *req);

DESCRIPTION
       Gets  the  current  depth of the	element	stack of req, initialised with
       khtml_open(3).  This is usually used with khtml_closeto(3).

       If called before	opening	any element contexts (i.e., a depth of	zero),
       a subsequent khtml_closeto(3) will close	all open scopes.

EXAMPLES
       The  following  outputs	a  simple HTML page.  It assumes r is a	struct
       kreq pointer.  For brevity, it does not do any error checking.

	     khttp_head(r, kresps[KRESP_STATUS],
	       "%s", khttps[KHTTP_200]);
	     khttp_head(r, kresps[KRESP_CONTENT_TYPE],
	       "%s", kmimetypes[KMIME_TEXT_HTML]);
	     khttp_body(r);
	     khtml_open(&req, r, 0);
	     khtml_elem(&req, KELEM_DOCTYPE);
	     khtml_elem(&req, KELEM_HTML);
	     pos = khtml_elemat(&req); /* save at html */
	     khtml_elem(&req, KELEM_HEAD);
	     khtml_elem(&req, KELEM_TITLE);
	     khtml_puts(&req, "Hello, world.");
	     khtml_closeto(&req, pos); /* to html */
	     khtml_closeelem(&req, 1); /* head */
	     khtml_elem(&req, KELEM_BODY);
	     khtml_puts(&req, "Hello, world");
	     khtml_close(&req);

SEE ALSO
       kcgihtml(3)

STANDARDS
       The referenced HTML5 standard is	HTML5.2: https://www.w3.org/TR/html52.

AUTHORS
       Written by Kristaps Dzonsons <kristaps@bsd.lv>.

CAVEATS
       If called in a scope that's subsequently	closed,	then a new  scope  re-
       opened  and filled in, a	corresponding khtml_closeto(3) will unwind the
       stack to	the new	scope.	In other words this does not identify a	 save-
       point: it's merely the scope depth.

FreeBSD	Ports 14.quarterly	  $Mdocdate$		       KHTML_ELEMAT(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=khtml_elemat&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help