X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=internals%2F_PDCLIB_int.h;h=ba5ab61bb6ea21d75e30cc66b194589dd66cbb13;hb=df23eb1ed6f397f1dfd952765aace12bd1717ee1;hp=1f37c13bedd915fe8d96f1b2318f5f8d40658609;hpb=61c50ee9e390879904e28f6e041dc86f4a1a8cd7;p=pdclib.old diff --git a/internals/_PDCLIB_int.h b/internals/_PDCLIB_int.h index 1f37c13..ba5ab61 100644 --- a/internals/_PDCLIB_int.h +++ b/internals/_PDCLIB_int.h @@ -259,5 +259,33 @@ typedef unsigned _PDCLIB_intmax _PDCLIB_uintmax_t; /* This is the main function called by atoi(), atol() and atoll(). */ _PDCLIB_intmax_t _PDCLIB_atomax( const char * s ); +/* Two helper functions used by strtol(), strtoul() and long long variants. */ +const char * _PDCLIB_strtox_prelim( const char * p, char * sign, int * base ); +_PDCLIB_uintmax_t _PDCLIB_strtox_main( const char ** p, int base, _PDCLIB_uintmax_t error, _PDCLIB_uintmax_t limval, _PDCLIB_uintmax_t limdigit, char * sign ); + /* Digits array used by various integer conversion functions in */ extern char _PDCLIB_digits[]; + +/* -------------------------------------------------------------------------- */ +/* Internal data types */ +/* -------------------------------------------------------------------------- */ + +/* Structure required by both atexit() and exit() for handling atexit functions */ +struct _PDCLIB_exitfunc_t +{ + struct _PDCLIB_exitfunc_t * next; + void (*func)( void ); +}; + +/* Structures required by malloc(), realloc(), and free(). */ +struct _PDCLIB_headnode_t +{ + struct _PDCLIB_memnode_t * first; + struct _PDCLIB_memnode_t * last; +}; + +struct _PDCLIB_memnode_t +{ + struct _PDCLIB_memnode_t * next; + _PDCLIB_size_t size; +};