rpm  5.4.15
rpmmdb.h
Go to the documentation of this file.
1 #ifndef H_RPMMDB
2 #define H_RPMMDB
3 
10 typedef /*@refcounted@*/ struct rpmmdb_s * rpmmdb;
11 
14 /*@unchecked@*/
15 extern int _rpmmdb_debug;
16 
17 /*@unchecked@*/ /*@relnull@*/
18 extern rpmmdb _rpmmdbI;
19 
20 #if defined(_RPMMDB_INTERNAL)
21 
23 struct rpmmdb_s {
24  struct rpmioItem_s _item;
25  const char * fn;
26 #if defined(__LCLINT__)
27 /*@refs@*/
28  int nrefs;
29 #endif
30 };
31 #endif /* _RPMMDB_INTERNAL */
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
42 /*@unused@*/ /*@null@*/
43 rpmmdb rpmmdbUnlink (/*@killref@*/ /*@only@*/ /*@null@*/ rpmmdb mdb)
44  /*@modifies mdb @*/;
45 #define rpmmdbUnlink(_mdb) \
46  ((rpmmdb)rpmioUnlinkPoolItem((rpmioItem)(_mdb), __FUNCTION__, __FILE__, __LINE__))
47 
53 /*@unused@*/ /*@newref@*/ /*@null@*/
54 rpmmdb rpmmdbLink (/*@null@*/ rpmmdb mdb)
55  /*@modifies mdb @*/;
56 #define rpmmdbLink(_mdb) \
57  ((rpmmdb)rpmioLinkPoolItem((rpmioItem)(_mdb), __FUNCTION__, __FILE__, __LINE__))
58 
64 /*@null@*/
65 rpmmdb rpmmdbFree(/*@killref@*/ /*@null@*/rpmmdb mdb)
66  /*@globals fileSystem @*/
67  /*@modifies mdb, fileSystem @*/;
68 #define rpmmdbFree(_mdb) \
69  ((rpmmdb)rpmioFreePoolItem((rpmioItem)(_mdb), __FUNCTION__, __FILE__, __LINE__))
70 
77 /*@newref@*/ /*@null@*/
78 rpmmdb rpmmdbNew(const char * fn, int flags)
79  /*@globals fileSystem, internalState @*/
80  /*@modifies fileSystem, internalState @*/;
81 
82 #ifdef __cplusplus
83 }
84 #endif
85 
86 #endif /* H_RPMMDB */
rpmmdb _rpmmdbI
Definition: rpmmdb.c:21
#define rpmmdbLink(_mdb)
Definition: rpmmdb.h:56
#define rpmmdbFree(_mdb)
Definition: rpmmdb.h:68
int _rpmmdb_debug
Definition: rpmmdb.c:18
const char const bson int mongo_write_concern int flags
Definition: mongo.h:485
#define rpmmdbUnlink(_mdb)
Definition: rpmmdb.h:45
rpmmdb rpmmdbNew(const char *fn, int flags)
Create and load a mongodb wrapper.
Definition: rpmmdb.c:53
struct rpmmdb_s * rpmmdb
Definition: rpmmdb.h:10