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

FreeBSD Manual Pages

  
 
  

home | help
LIBXO(3)		    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
       using  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)

ADDITIONAL DOCUMENTATION
       FreeBSD	uses libxo version 0.6.1.  Complete documentation can be found
       on github:

	     http://juniper.github.io/libxo/0.6.1/libxo-manual.html

       libxo lives on github as:

	     https://github.com/Juniper/libxo

       The latest release of libxo is available	at:

	     https://github.com/Juniper/libxo/releases

HISTORY
       The libxo library was added in FreeBSD 11.0.

AUTHOR
       Phil Shafer

FreeBSD	ports 15.0	       December	4, 2014			      LIBXO(3)

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+Ports+15.0>

home | help