2 * This file is part of The Croco Library
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of version 3 of the GNU General Public
6 * License as published by the Free Software Foundation.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
18 * Author: Dodji Seketeli
19 * See COPYRIGHTS file for copyrights information.
22 #ifndef __CR_PROP_LIST_H__
23 #define __CR_PROP_LIST_H__
26 #include "cr-declaration.h"
27 #include "cr-string.h"
31 typedef struct _CRPropList CRPropList ;
32 typedef struct _CRPropListPriv CRPropListPriv ;
36 CRPropListPriv * priv;
39 CRPropList * cr_prop_list_append (CRPropList *a_this,
40 CRPropList *a_to_append) ;
42 CRPropList * cr_prop_list_append2 (CRPropList *a_this,
44 CRDeclaration *a_decl) ;
46 CRPropList * cr_prop_list_prepend (CRPropList *a_this,
47 CRPropList *a_to_append) ;
49 CRPropList * cr_prop_list_prepend2 (CRPropList *a_this,
51 CRDeclaration *a_decl) ;
53 enum CRStatus cr_prop_list_set_prop (CRPropList *a_this,
56 enum CRStatus cr_prop_list_get_prop (CRPropList *a_this,
59 enum CRStatus cr_prop_list_lookup_prop (CRPropList *a_this,
63 CRPropList * cr_prop_list_get_next (CRPropList *a_this) ;
65 CRPropList * cr_prop_list_get_prev (CRPropList *a_this) ;
67 enum CRStatus cr_prop_list_set_decl (CRPropList *a_this,
68 CRDeclaration *a_decl);
70 enum CRStatus cr_prop_list_get_decl (CRPropList *a_this,
71 CRDeclaration **a_decl) ;
73 CRPropList * cr_prop_list_unlink (CRPropList *a_this,
76 void cr_prop_list_destroy (CRPropList *a_this) ;
80 #endif /*__CR_PROP_LIST_H__*/