1 /* 2 * Distributed under the Boost Software License, Version 1.0. 3 * (See accompanying file LICENSE_1_0.txt or copy at 4 * http://www.boost.org/LICENSE_1_0.txt) 5 */ 6 module glib.gtrashstack; 7 8 9 // #include <glib/gutils.h> 10 // 11 // G_BEGIN_DECLS 12 // 13 // typedef struct _GTrashStack GTrashStack; 14 // struct _GTrashStack 15 // { 16 // GTrashStack *next; 17 // }; 18 // 19 // G_INLINE_FUNC void g_trash_stack_push (GTrashStack **stack_p, 20 // gpointer data_p); 21 // G_INLINE_FUNC gpointer g_trash_stack_pop (GTrashStack **stack_p); 22 // G_INLINE_FUNC gpointer g_trash_stack_peek (GTrashStack **stack_p); 23 // G_INLINE_FUNC guint g_trash_stack_height (GTrashStack **stack_p); 24 // 25 // #if defined (G_CAN_INLINE) || defined (__G_TRASH_STACK_C__) 26 // 27 // G_INLINE_FUNC void 28 // g_trash_stack_push (GTrashStack **stack_p, 29 // gpointer data_p) 30 // { 31 // GTrashStack *data = (GTrashStack *) data_p; 32 // 33 // data->next = *stack_p; 34 // *stack_p = data; 35 // } 36 // G_INLINE_FUNC gpointer 37 // g_trash_stack_pop (GTrashStack **stack_p) 38 // { 39 // GTrashStack *data; 40 // 41 // data = *stack_p; 42 // if (data) 43 // { 44 // *stack_p = data->next; 45 // /* NULLify private pointer here, most platforms store NULL as 46 // * subsequent 0 bytes 47 // */ 48 // data->next = NULL; 49 // } 50 // 51 // return data; 52 // } 53 // G_INLINE_FUNC gpointer 54 // g_trash_stack_peek (GTrashStack **stack_p) 55 // { 56 // GTrashStack *data; 57 // 58 // data = *stack_p; 59 // 60 // return data; 61 // } 62 // G_INLINE_FUNC guint 63 // g_trash_stack_height (GTrashStack **stack_p) 64 // { 65 // GTrashStack *data; 66 // guint i = 0; 67 // 68 // for (data = *stack_p; data; data = data->next) 69 // i++; 70 // 71 // return i; 72 // } 73 // 74 // #endif /* G_CAN_INLINE || __G_TRASH_STACK_C__ */ 75 // 76 // G_END_DECLS 77 //