1#ifndef CLIENT_MY_READLINE_INCLUDED
2#define CLIENT_MY_READLINE_INCLUDED
3
4/*
5 Copyright (c) 2000, 2011, Oracle and/or its affiliates
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; version 2 of the License.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19*/
20
21/* readline for batch mode */
22
23typedef struct st_line_buffer
24{
25 File file;
26 char *buffer; /* The buffer itself, grown as needed. */
27 char *end; /* Pointer at buffer end */
28 char *start_of_line,*end_of_line;
29 uint bufread; /* Number of bytes to get with each read(). */
30 uint eof;
31 ulong max_size;
32 ulong read_length; /* Length of last read string */
33 int error;
34 bool truncated;
35} LINE_BUFFER;
36
37extern LINE_BUFFER *batch_readline_init(ulong max_size,FILE *file);
38extern LINE_BUFFER *batch_readline_command(LINE_BUFFER *buffer, char * str);
39extern char *batch_readline(LINE_BUFFER *buffer, bool binary_mode);
40extern void batch_readline_end(LINE_BUFFER *buffer);
41
42#endif /* CLIENT_MY_READLINE_INCLUDED */
43