poolid.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2007, Novell Inc.
00003  *
00004  * This program is licensed under the BSD license, read LICENSE.BSD
00005  * for further information
00006  */
00007 
00008 /*
00009  * poolid.h
00010  * 
00011  */
00012 
00013 #ifndef SATSOLVER_POOLID_H
00014 #define SATSOLVER_POOLID_H
00015 
00016 #include "pooltypes.h"
00017 #include "hash.h"
00018 
00019 //-----------------------------------------------
00020 // Id's with relation
00021 
00022 typedef struct _Reldep {
00023   Id name;              // "package"
00024   Id evr;               // "0:42-3"
00025   int flags;            // operation/relation, see REL_x in pool.h
00026 } Reldep;
00027 
00028 extern Id str2id(Pool *pool, const char *, int);
00029 extern Id strn2id(Pool *pool, const char *, unsigned int, int);
00030 extern Id rel2id(Pool *pool, Id, Id, int, int);
00031 extern const char *id2str(const Pool *pool, Id);
00032 extern const char *dep2str(Pool *pool, Id); /* might alloc tmpspace */
00033 extern const char *id2rel(const Pool *pool, Id);
00034 extern const char *id2evr(const Pool *pool, Id);
00035 
00036 extern void pool_shrink_strings(Pool *pool);
00037 extern void pool_shrink_rels(Pool *pool);
00038 extern void pool_freeidhashes(Pool *pool);
00039 
00040 #endif /* SATSOLVER_POOLID_H */
Generated on Mon Dec 12 11:44:12 2011 for satsolver by  doxygen 1.6.3