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

FreeBSD Manual Pages

  
 
  

home | help
LIBXO(3)	       FreeBSD Library Functions Manual		      LIBXO(3)

NAME
     xo_set_info -- set	the field information data for libxo

LIBRARY
     library "libxo"

SYNOPSIS
     #include <libxo/xo.h>

     void
     xo_set_info(xo_handle_t *handle, xo_info_t	*info, int count);

DESCRIPTION
     HTML data can include additional information in attributes	that begin
     with "data-".  To enable this, three things must occur:

     First the application must	build an array of xo_info_t structures,	one
     per tag.  The array must be sorted	by name, since libxo uses a binary
     search to find the	entry that matches names from format instructions.

     The xo_info_t structure is	defined	in <libxo/xo.h>:

	       typedef struct xo_info_s	{
		   const char *xi_name;	   /* Name of the element */
		   const char *xi_type;	   /* Type of field */
		   const char *xi_help;	   /* Description of field */
	       } xo_info_t;

     Second, the application must inform libxo about this information using
     the xo_set_info() call.  Like other libxo calls, passing NULL for the
     handle tells libxo	to use the default handle.

     If	the count is -1, libxo will count the elements of info,	but there must
     be	an empty element at the	end.  More typically, the number is known to
     the application:

	       xo_info_t info[]	= {
		   { "in-stock", "number", "Number of items in stock" },
		   { "name", "string", "Name of	the item" },
		   { "on-order", "number", "Number of items on order" },
		   { "sku", "string", "Stock Keeping Unit" },
		   { "sold", "number", "Number of items	sold" },
	       };
	       int info_count =	(sizeof(info) /	sizeof(info[0]));
	       ...
	       xo_set_info(NULL, info, info_count);

     Third, the	emission of info must be triggered with	the XOF_INFO flag us-
     ing either	the xo_set_flags() function or the "--libxo=info" command line
     argument.

     The type and help values, if present, are emitted as the "data-type" and
     "data-help" attributes:

	     <div class="data" data-tag="sku" data-type="string"
		  data-help="Stock Keeping Unit">GRO-000-533</div>

SEE ALSO
     xo_emit(3), libxo(3)

HISTORY
     The libxo library first appeared in FreeBSD 11.0.

AUTHORS
     libxo was written by Phil Shafer <phil@freebsd.org>.

FreeBSD	13.0		       December	4, 2014			  FreeBSD 13.0

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | SEE ALSO | HISTORY | AUTHORS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xo_set_info&sektion=3&manpath=FreeBSD+12.0-RELEASE>

home | help