rizin/libr/include/r_util/r_spaces.h
2016-07-10 14:22:15 +02:00

27 lines
914 B
C

#ifndef R_SPACES_H
#define R_SPACES_H
#define R_SPACES_MAX 512
typedef struct r_space_t {
int space_idx;
int space_idx2;
char *spaces[R_SPACES_MAX];
RList *spacestack; // metaspaces
PrintfCallback cb_printf;
void (*unset_for)(void *user, int idx);
int (*count_for)(void *user, int idx);
void *user;
} RSpaces;
R_API void r_space_init(RSpaces *f, void (*unset_for)(void*, int), int (*count_for)(void *,int), void *user);
R_API void r_space_fini(RSpaces *f);
R_API int r_space_get(RSpaces *f, const char *name);
R_API const char *r_space_get_i(RSpaces *f, int idx);
R_API int r_space_push(RSpaces *f, const char *name);
R_API int r_space_pop(RSpaces *f);
R_API int r_space_set(RSpaces *f, const char *name);
R_API int r_space_unset(RSpaces *f, const char *fs);
R_API int r_space_list(RSpaces *f, int mode);
R_API int r_space_rename(RSpaces *f, const char *oname, const char *nname);
#endif // R_SPACES_H