mirror of
https://github.com/matrix-construct/construct
synced 2024-12-29 08:54:02 +01:00
42 lines
858 B
C
42 lines
858 B
C
|
#ifndef INCLUDED_rsdb_h
|
||
|
#define INCLUDED_rsdb_h
|
||
|
|
||
|
/* error handler callback */
|
||
|
typedef void rsdb_error_cb(const char *);
|
||
|
|
||
|
typedef int (*rsdb_callback) (int, const char **);
|
||
|
|
||
|
typedef enum rsdb_transtype
|
||
|
{
|
||
|
RSDB_TRANS_START,
|
||
|
RSDB_TRANS_END
|
||
|
}
|
||
|
rsdb_transtype;
|
||
|
|
||
|
struct rsdb_table
|
||
|
{
|
||
|
char ***row;
|
||
|
int row_count;
|
||
|
int col_count;
|
||
|
void *arg;
|
||
|
};
|
||
|
|
||
|
int rsdb_init(rsdb_error_cb *);
|
||
|
void rsdb_shutdown(void);
|
||
|
|
||
|
const char *rsdb_quote(const char *src);
|
||
|
|
||
|
void rsdb_exec(rsdb_callback cb, const char *format, ...);
|
||
|
|
||
|
void rsdb_exec_fetch(struct rsdb_table *data, const char *format, ...);
|
||
|
void rsdb_exec_fetch_end(struct rsdb_table *data);
|
||
|
|
||
|
void rsdb_transaction(rsdb_transtype type);
|
||
|
/* rsdb_snprintf.c */
|
||
|
|
||
|
int rs_vsnprintf(char *dest, const size_t bytes, const char *format, va_list args);
|
||
|
int rs_snprintf(char *dest, const size_t bytes, const char *format, ...);
|
||
|
|
||
|
|
||
|
#endif
|