⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 llist.h

📁 The major functionality added in this release includes: - Rootless mode in X11 - Widget Templt
💻 H
字号:
/* $Id: llist.h,v 1.3 2002/10/29 22:23:55 cgroom Exp $ *  * llist.h - generic doubly-linked list. Note that this list includes * metadata which allow for fast lookup of start/end of list. API modeled * after glib's GLList. *  * PicoGUI small and efficient client/server GUI * Copyright (C) 2000-2002 Micah Dowty <micahjd@users.sourceforge.net> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. *  * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. *  * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. *  * Contributors:  *   LList by Chuck Groom, cgroom@bluemug.com, Blue Mug, Inc. July *   2002. Used by textedid widget. */#include <picogui/types.h>#ifndef __LLIST_H__#define __LLIST_H__typedef struct _LList LList;typedef void (*LListFunc)                 ( void * data,                                            void * userdata );/* Actions which manipulate llists */g_error      llist_append                 ( LList ** new,                                            LList * list,                                            void * data );g_error      llist_prepend                ( LList ** new,                                            LList * list,                                            void * data );g_error      llist_insert_after           ( LList ** new,                                            LList * list,                                            void * data );g_error      llist_insert                 ( LList ** new,                                             LList * list,                                            void * data,                                            s16 position );void         llist_remove                 ( LList ** new,                                             LList * list );void         llist_remove_data            ( LList ** new,                                             LList * list,                                            void * data );g_error      llist_remove_link            ( LList ** new,                                             LList * list,                                            LList ** llink );g_error      llist_alloc                  ( LList ** new );g_error      llist_copy                   ( LList ** new_list,                                            LList * list );void         llist_concat                 ( LList ** new,                                            LList * llist1,                                             LList * llist2 );g_error      llist_split                  ( LList * llist,                                            LList **before,                                            LList **after);void         llist_free                   ( LList * llist );/* Actions which get/set llist info */void         llist_foreach                ( LList * llist,                                            LListFunc func,                                             void * user_data );u16          llist_length                 ( LList * llist );LList *      llist_first                  ( LList * llist );LList *      llist_last                   ( LList * llist );LList *      llist_next                   ( LList * llist );LList *      llist_prev                   ( LList * llist );LList *      llist_nth                    ( LList * llist,                                            u16 n );void *       llist_nth_data               ( LList * llist,                                            u16 n );u16          llist_index                  ( LList * llist );void *       llist_data                   ( LList * llist );LList *      llist_find                   ( LList * llist,                                            void * data );#endif /* __LLIST_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -