root / include / qemu / readline.h @ 13401ba0
History | View | Annotate | Download (1.9 kB)
1 | 376253ec | aliguori | #ifndef READLINE_H
|
---|---|---|---|
2 | 376253ec | aliguori | #define READLINE_H
|
3 | 376253ec | aliguori | |
4 | 4c36ba32 | aliguori | #define READLINE_CMD_BUF_SIZE 4095 |
5 | 4c36ba32 | aliguori | #define READLINE_MAX_CMDS 64 |
6 | 4c36ba32 | aliguori | #define READLINE_MAX_COMPLETIONS 256 |
7 | 4c36ba32 | aliguori | |
8 | c60bf339 | Stefan Hajnoczi | typedef void ReadLinePrintfFunc(void *opaque, const char *fmt, ...); |
9 | c60bf339 | Stefan Hajnoczi | typedef void ReadLineFlushFunc(void *opaque); |
10 | c60bf339 | Stefan Hajnoczi | typedef void ReadLineFunc(void *opaque, const char *str, |
11 | c60bf339 | Stefan Hajnoczi | void *readline_opaque);
|
12 | c60bf339 | Stefan Hajnoczi | typedef void ReadLineCompletionFunc(void *opaque, |
13 | d2674b2c | Wenchao Xia | const char *cmdline); |
14 | 4c36ba32 | aliguori | |
15 | 4c36ba32 | aliguori | typedef struct ReadLineState { |
16 | 4c36ba32 | aliguori | char cmd_buf[READLINE_CMD_BUF_SIZE + 1]; |
17 | 4c36ba32 | aliguori | int cmd_buf_index;
|
18 | 4c36ba32 | aliguori | int cmd_buf_size;
|
19 | 4c36ba32 | aliguori | |
20 | 4c36ba32 | aliguori | char last_cmd_buf[READLINE_CMD_BUF_SIZE + 1]; |
21 | 4c36ba32 | aliguori | int last_cmd_buf_index;
|
22 | 4c36ba32 | aliguori | int last_cmd_buf_size;
|
23 | 4c36ba32 | aliguori | |
24 | 4c36ba32 | aliguori | int esc_state;
|
25 | 4c36ba32 | aliguori | int esc_param;
|
26 | 376253ec | aliguori | |
27 | 4c36ba32 | aliguori | char *history[READLINE_MAX_CMDS];
|
28 | 4c36ba32 | aliguori | int hist_entry;
|
29 | 376253ec | aliguori | |
30 | 4c36ba32 | aliguori | ReadLineCompletionFunc *completion_finder; |
31 | 4c36ba32 | aliguori | char *completions[READLINE_MAX_COMPLETIONS];
|
32 | 4c36ba32 | aliguori | int nb_completions;
|
33 | 4c36ba32 | aliguori | int completion_index;
|
34 | 376253ec | aliguori | |
35 | 4c36ba32 | aliguori | ReadLineFunc *readline_func; |
36 | 4c36ba32 | aliguori | void *readline_opaque;
|
37 | 4c36ba32 | aliguori | int read_password;
|
38 | 4c36ba32 | aliguori | char prompt[256]; |
39 | c60bf339 | Stefan Hajnoczi | |
40 | c60bf339 | Stefan Hajnoczi | ReadLinePrintfFunc *printf_func; |
41 | c60bf339 | Stefan Hajnoczi | ReadLineFlushFunc *flush_func; |
42 | c60bf339 | Stefan Hajnoczi | void *opaque;
|
43 | 4c36ba32 | aliguori | } ReadLineState; |
44 | 376253ec | aliguori | |
45 | 4c36ba32 | aliguori | void readline_add_completion(ReadLineState *rs, const char *str); |
46 | 4c36ba32 | aliguori | void readline_set_completion_index(ReadLineState *rs, int completion_index); |
47 | 4c36ba32 | aliguori | |
48 | 4c36ba32 | aliguori | const char *readline_get_history(ReadLineState *rs, unsigned int index); |
49 | 4c36ba32 | aliguori | |
50 | 4c36ba32 | aliguori | void readline_handle_byte(ReadLineState *rs, int ch); |
51 | 4c36ba32 | aliguori | |
52 | 4c36ba32 | aliguori | void readline_start(ReadLineState *rs, const char *prompt, int read_password, |
53 | c60bf339 | Stefan Hajnoczi | ReadLineFunc *readline_func, void *readline_opaque);
|
54 | 2724b180 | aliguori | void readline_restart(ReadLineState *rs);
|
55 | 4c36ba32 | aliguori | void readline_show_prompt(ReadLineState *rs);
|
56 | 4c36ba32 | aliguori | |
57 | c60bf339 | Stefan Hajnoczi | ReadLineState *readline_init(ReadLinePrintfFunc *printf_func, |
58 | c60bf339 | Stefan Hajnoczi | ReadLineFlushFunc *flush_func, |
59 | c60bf339 | Stefan Hajnoczi | void *opaque,
|
60 | 4c36ba32 | aliguori | ReadLineCompletionFunc *completion_finder); |
61 | 376253ec | aliguori | |
62 | 376253ec | aliguori | #endif /* !READLINE_H */ |