Libcroco
|
00001 /* 00002 * This file is part of The Croco Library 00003 * 00004 * This program is free software; you can redistribute it and/or 00005 * modify it under the terms of version 2.1 of the GNU Lesser General Public 00006 * License as published by the Free Software Foundation. 00007 * 00008 * This program is distributed in the hope that it will be useful, 00009 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00010 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00011 * GNU General Public License for more details. 00012 * 00013 * You should have received a copy of the GNU Lesser General Public License 00014 * along with this program; if not, write to the Free Software 00015 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 00016 * USA 00017 * 00018 * Author: Dodji Seketeli 00019 * See COPYRIGHTS file for copyrights information. 00020 */ 00021 00022 #ifndef __CR_PROP_LIST_H__ 00023 #define __CR_PROP_LIST_H__ 00024 00025 #include "cr-utils.h" 00026 #include "cr-declaration.h" 00027 #include "cr-string.h" 00028 00029 G_BEGIN_DECLS 00030 00031 typedef struct _CRPropList CRPropList ; 00032 typedef struct _CRPropListPriv CRPropListPriv ; 00033 00034 struct _CRPropList 00035 { 00036 CRPropListPriv * priv; 00037 } ; 00038 00039 CRPropList * cr_prop_list_append (CRPropList *a_this, 00040 CRPropList *a_to_append) ; 00041 00042 CRPropList * cr_prop_list_append2 (CRPropList *a_this, 00043 CRString *a_prop, 00044 CRDeclaration *a_decl) ; 00045 00046 CRPropList * cr_prop_list_prepend (CRPropList *a_this, 00047 CRPropList *a_to_append) ; 00048 00049 CRPropList * cr_prop_list_prepend2 (CRPropList *a_this, 00050 CRString *a_prop, 00051 CRDeclaration *a_decl) ; 00052 00053 enum CRStatus cr_prop_list_set_prop (CRPropList *a_this, 00054 CRString *a_prop) ; 00055 00056 enum CRStatus cr_prop_list_get_prop (CRPropList const *a_this, 00057 CRString **a_prop) ; 00058 00059 enum CRStatus cr_prop_list_lookup_prop (CRPropList *a_this, 00060 CRString *a_prop, 00061 CRPropList**a_pair) ; 00062 00063 CRPropList * cr_prop_list_get_next (CRPropList *a_this) ; 00064 00065 CRPropList * cr_prop_list_get_prev (CRPropList *a_this) ; 00066 00067 enum CRStatus cr_prop_list_set_decl (CRPropList *a_this, 00068 CRDeclaration *a_decl); 00069 00070 enum CRStatus cr_prop_list_get_decl (CRPropList const *a_this, 00071 CRDeclaration **a_decl) ; 00072 00073 CRPropList * cr_prop_list_unlink (CRPropList *a_this, 00074 CRPropList *a_pair) ; 00075 00076 void cr_prop_list_destroy (CRPropList *a_this) ; 00077 00078 G_END_DECLS 00079 00080 #endif /*__CR_PROP_LIST_H__*/