/* --------------------------------------------------------------------- */ /* BEGIN COPYRIGHT AND LICENSE NOTICE */ /* --------------------------------------------------------------------- */ /* ** Copyright (c) 2008 by Richard Harter. ** ** Permission is hereby granted, free of charge, to any person ** obtaining a copy of this software and associated documentation ** files , to deal in the Software without ** restriction, including without limitation the rights to use, ** copy, modify, merge, publish, distribute, sublicense, and/or ** sell copies of the Software, and to permit persons to whom the ** Software is furnished to do so, subject to the following ** conditions: ** ** The above copyright notice and this permission notice shall be ** included in copies of this software and in copies of substantial ** portions, whether or not the software has been modified. ** ** Derivative works shall include a notice that the software is a ** modified version of the copyrighted software. ** ** There is no guarantee that this software is useful for anything ** or that it is any way correct or of value. The author disclaims ** any responsibility for the consequences of using this software. ** */ /* --------------------------------------------------------------------- */ /* END COPYRIGHT AND LICENSE NOTICE */ /* --------------------------------------------------------------------- */ #ifndef HAVE_STGPOOL_H #define HAVE_STGPOOL_H typedef struct stgpool_s stgpool_s; struct stgpool_s { stgpool_s * link; size_t pos; size_t sp_lim; char * space; }; /* ---------------- prototypes --------------------- */ void * stgpool_get (stgpool_s * pool, size_t size, char * lineloc); stgpool_s * stgpool_open (void); void stgpool_close(stgpool_s * pool); void stgpool_clear(stgpool_s * pool); void stgpool_stats(void); void * exparray (void *,size_t *,size_t,stgpool_s *,char *); #endif