/** \file builtin_help.c

    Functions for printing usage information of builtin commands. This
	file is automatically generated from the file builtin_help.hdr and
	various help files in the doc_src directory.
*/

#include <stdlib.h>
#include <stdio.h>
#include <strings.h>
#include <wchar.h>
#include <sys/types.h>

#include "config.h"
#include "util.h"
#include "common.h"
#include "halloc_util.h"

static int is_help_init=0;

/**
	Hashtable storing the help text
*/
static hash_table_t tbl;

static void builtin_help_init();

char *builtin_help_get( wchar_t *cmd )
{
	if( !is_help_init )
	{
		builtin_help_init();
	}
	return (char *)hash_get( &tbl, (void *)cmd );
}

static void builtin_help_init()
{
	is_help_init = 1;
	halloc_register_function( global_context, (void (*)(void *))&hash_destroy, &tbl );
	hash_init( &tbl, &hash_wcs_func, &hash_wcs_cmp );