9 #ifndef _tinyrl_history_h
10 #define _tinyrl_history_h
12 #include "lub/c_decl.h"
13 #include "lub/types.h"
20 typedef struct _tinyrl_history_entry tinyrl_history_entry_t;
23 tinyrl_history_entry__get_line(
const tinyrl_history_entry_t *instance);
25 tinyrl_history_entry__get_index(
const tinyrl_history_entry_t *instance);
30 typedef struct _tinyrl_history tinyrl_history_t;
41 const tinyrl_history_t *history;
46 extern tinyrl_history_t *
47 tinyrl_history_new(
unsigned stifle);
50 tinyrl_history_delete(tinyrl_history_t *instance);
53 tinyrl_history_add (tinyrl_history_t *instance,
56 extern tinyrl_history_entry_t *
57 tinyrl_history_getfirst (
const tinyrl_history_t *instance,
59 extern tinyrl_history_entry_t *
60 tinyrl_history_getlast (
const tinyrl_history_t *instance,
63 extern tinyrl_history_entry_t *
66 extern tinyrl_history_entry_t *
75 extern tinyrl_history_entry_t *
76 tinyrl_history_remove(tinyrl_history_t *instance,
79 tinyrl_history_clear(tinyrl_history_t *instance);
81 tinyrl_history_stifle(tinyrl_history_t *instance,
84 tinyrl_history_unstifle(tinyrl_history_t *instance);
86 tinyrl_history_is_stifled(
const tinyrl_history_t *instance);
91 extern tinyrl_history_entry_t **
92 tinyrl_history_list(
const tinyrl_history_t *instance);
93 extern tinyrl_history_entry_t *
94 tinyrl_history_get(
const tinyrl_history_t *instance,
102 tinyrl_history_NO_EXPANSION,
103 tinyrl_history_EXPANDED
104 } tinyrl_history_expand_t;
106 extern tinyrl_history_expand_t
107 tinyrl_history_expand(
const tinyrl_history_t *instance,
bool_t
Definition: types.h:18