view oldXMenu/XCrAssoc.c @ 93789:664ca9007b13

(diary-sexp-entry-symbol): Rename sexp-diary-entry-symbol. Keep old name as alias, update users. (diary-list-entries-hook): Rename list-diary-entries-hook. Keep old name as alias, update users. (diary-mark-entries-hook): Rename mark-diary-entries-hook. Keep old name as alias, update users. (diary-nongregorian-listing-hook): Rename nongregorian-diary-listing-hook. Keep old name as alias, update users. (diary-nongregorian-marking-hook): Rename nongregorian-diary-marking-hook. Keep old name as alias, update users. (diary-print-entries-hook): Rename print-diary-entries-hook. Keep old name as alias, update users. (diary-abbreviated-year-flag): Rename abbreviated-calendar-year. Keep old name as alias, update users. (diary-number-of-entries): Rename number-of-diary-entries. Keep old name as alias, update users. (view-diary-entries, list-diary-entries, show-all-diary-entries): Give version of obsolescence. (diary-view-other-diary-entries): Rename view-other-diary-entries. Keep old name as alias, update callers. (diary-add-to-list): Rename add-to-diary-list. Keep old name as alias, update callers. (diary-include-other-diary-files): Rename include-other-diary-files. Keep old name as alias, update callers. (diary-simple-display): Rename simple-diary-display. Keep old name as alias, update callers. (diary-fancy-display): Rename fancy-diary-display. Keep old name as alias, update callers. (diary-print-entries): Rename print-diary-entries. Keep old name as alias, update callers. (diary-marking-entries-flag): Rename marking-diary-entries. Update users. (diary-marking-entry-flag): Rename marking-diary-entry. Update users. (diary-mark-entries): Rename mark-diary-entries. Keep old name as alias, update callers. (diary-mark-sexp-entries): Rename mark-sexp-diary-entries. Keep old name as alias, update callers. (diary-mark-included-diary-files): Rename mark-included-diary-files. Keep old name as alias, update callers. (calendar-mark-days-named): Rename mark-calendar-days-named. Keep old name as alias, update callers. (calendar-mark-month): Rename mark-calendar-month. Keep old name as alias, update callers. (calendar-mark-date-pattern): Rename mark-calendar-date-pattern. Keep old name as alias, update callers. (diary-sort-entries): Rename sort-diary-entries. Keep old name as alias, update callers. (diary-list-sexp-entries): Rename list-sexp-diary-entries. Keep old name as alias, update callers. (diary-make-entry): Rename make-diary-entry. Keep old name as alias, update callers. (diary-insert-entry): Rename insert-diary-entry. Keep old name as alias. (diary-insert-weekly-entry): Rename insert-weekly-diary-entry. Keep old name as alias. (diary-insert-monthly-entry): Rename insert-monthly-diary-entry. Keep old name as alias. (diary-insert-yearly-entry): Rename insert-yearly-diary-entry. Keep old name as alias. (diary-insert-anniversary-entry): Rename insert-anniversary-diary-entry. Keep old name as alias. (diary-insert-block-entry): Rename insert-block-diary-entry. Keep old name as alias. (diary-insert-cyclic-entry): Rename insert-cyclic-diary-entry. Keep old name as alias. (diary-fancy-font-lock-keywords): Rename fancy-diary-font-lock-keywords. Keep old name as alias, update users. (diary-fancy-display-mode): Rename fancy-diary-display-mode. Keep old name as alias, update callers.
author Glenn Morris <rgm@gnu.org>
date Sun, 06 Apr 2008 20:53:14 +0000
parents fec5e03aaf59
children ec58e5c426ef 5cc91198ffb2
line wrap: on
line source

/* Copyright    Massachusetts Institute of Technology    1985	*/
#include "copyright.h"


#include <config.h>
#include <X11/Xlib.h>
#include <errno.h>
#include "X10.h"

#ifndef NULL
#define NULL 0
#endif

extern int errno;

/*
 * XCreateAssocTable - Create an XAssocTable.  The size argument should be
 * a power of two for efficiency reasons.  Some size suggestions: use 32
 * buckets per 100 objects;  a reasonable maximum number of object per
 * buckets is 8.  If there is an error creating the XAssocTable, a NULL
 * pointer is returned.
 */
XAssocTable *XCreateAssocTable(size)
	register int size;		/* Desired size of the table. */
{
	register XAssocTable *table;	/* XAssocTable to be initialized. */
	register XAssoc *buckets;	/* Pointer to the first bucket in */
					/* the bucket array. */

	/* Malloc the XAssocTable. */
	if ((table = (XAssocTable *)malloc(sizeof(XAssocTable))) == NULL) {
		/* malloc call failed! */
		errno = ENOMEM;
		return(NULL);
	}

	/* calloc the buckets (actually just their headers). */
	buckets = (XAssoc *)calloc((unsigned)size, (unsigned)sizeof(XAssoc));
	if (buckets == NULL) {
		/* calloc call failed! */
		errno = ENOMEM;
		return(NULL);
	}

	/* Insert table data into the XAssocTable structure. */
	table->buckets = buckets;
	table->size = size;

	while (--size >= 0) {
		/* Initialize each bucket. */
		buckets->prev = buckets;
		buckets->next = buckets;
		buckets++;
	}

	return(table);
}

/* arch-tag: 5df3237d-ada0-4345-a3ab-282cafb397aa
   (do not change this comment) */