stack.h

Go to the documentation of this file.
00001 /*
00002  * This file is part of LibParserUtils.
00003  * Licensed under the MIT License,
00004  *                http://www.opensource.org/licenses/mit-license.php
00005  * Copyright 2008 John-Mark Bell <jmb@netsurf-browser.org>
00006  */
00007 
00008 #ifndef parserutils_utils_stack_h_
00009 #define parserutils_utils_stack_h_
00010 
00011 #ifdef __cplusplus
00012 extern "C"
00013 {
00014 #endif
00015 
00016 #include <stddef.h>
00017 
00018 #include <parserutils/errors.h>
00019 #include <parserutils/functypes.h>
00020 
00021 struct parserutils_stack;
00022 typedef struct parserutils_stack parserutils_stack;
00023 
00024 parserutils_error parserutils_stack_create(size_t item_size, size_t chunk_size,
00025                 parserutils_stack **stack);
00026 parserutils_error parserutils_stack_destroy(parserutils_stack *stack);
00027 
00028 parserutils_error parserutils_stack_push(parserutils_stack *stack, 
00029                 const void *item);
00030 parserutils_error parserutils_stack_pop(parserutils_stack *stack, void *item);
00031 
00032 void *parserutils_stack_get_current(parserutils_stack *stack);
00033 
00034 #ifdef __cplusplus
00035 }
00036 #endif
00037 
00038 #endif
00039 

Generated on Wed Jul 29 11:59:20 2015 for Libparserutils by  doxygen 1.5.6