summaryrefslogtreecommitdiff
path: root/libtecla-1.4.1/freelist.h
diff options
context:
space:
mode:
Diffstat (limited to 'libtecla-1.4.1/freelist.h')
-rw-r--r--libtecla-1.4.1/freelist.h82
1 files changed, 0 insertions, 82 deletions
diff --git a/libtecla-1.4.1/freelist.h b/libtecla-1.4.1/freelist.h
deleted file mode 100644
index 84e6aef..0000000
--- a/libtecla-1.4.1/freelist.h
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef freelist_h
-#define freelist_h
-
-/*
- * Copyright (c) 2000, 2001 by Martin C. Shepherd.
- *
- * All rights reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, and/or sell copies of the Software, and to permit persons
- * to whom the Software is furnished to do so, provided that the above
- * copyright notice(s) and this permission notice appear in all copies of
- * the Software and that both the above copyright notice(s) and this
- * permission notice appear in supporting documentation.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
- * OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
- * HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
- * INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
- * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
- * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
- * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- *
- * Except as contained in this notice, the name of a copyright holder
- * shall not be used in advertising or otherwise to promote the sale, use
- * or other dealings in this Software without prior written authorization
- * of the copyright holder.
- */
-
-/*
- * This module provides a memory allocation scheme that helps to
- * prevent memory fragmentation by allocating large blocks of
- * fixed sized objects and forming them into a free-list for
- * subsequent allocations. The free-list is expanded as needed.
- */
-typedef struct FreeList FreeList;
-
-/*
- * Allocate a new free-list from blocks of 'blocking_factor' objects of size
- * node_size. The node_size argument should be determined by applying
- * the sizeof() operator to the object type that you intend to allocate from
- * the freelist.
- */
-FreeList *_new_FreeList(const char *caller, size_t node_size,
- unsigned blocking_factor);
-
-/*
- * If it is known that none of the nodes currently allocated from
- * a freelist are still in use, the following function can be called
- * to return all nodes to the freelist without the overhead of
- * having to call del_FreeListNode() for every allocated node. The
- * nodes of the freelist can then be reused by future callers to
- * new_FreeListNode().
- */
-void _rst_FreeList(FreeList *fl);
-
-/*
- * Delete a free-list.
- */
-FreeList *_del_FreeList(const char *caller, FreeList *fl, int force);
-
-/*
- * Determine the number of nodes that are currently allocated.
- */
-long _busy_FreeListNodes(FreeList *fl);
-
-/*
- * Allocate a new object from a free-list.
- */
-void *_new_FreeListNode(FreeList *fl);
-
-/*
- * Return an object to the free-list that it was allocated from.
- */
-void *_del_FreeListNode(FreeList *fl, void *object);
-
-#endif