libedit-sys 0.3.0

Low-level FFI bindings to the libedit line-editing library
Documentation
/* automatically generated by rust-bindgen 0.71.1 */

#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct FILE { _unused: [u8; 0] }

pub const CC_NORM: u32 = 0;
pub const CC_NEWLINE: u32 = 1;
pub const CC_EOF: u32 = 2;
pub const CC_ARGHACK: u32 = 3;
pub const CC_REFRESH: u32 = 4;
pub const CC_CURSOR: u32 = 5;
pub const CC_ERROR: u32 = 6;
pub const CC_FATAL: u32 = 7;
pub const CC_REDISPLAY: u32 = 8;
pub const CC_REFRESH_BEEP: u32 = 9;
pub const EL_PROMPT: u32 = 0;
pub const EL_TERMINAL: u32 = 1;
pub const EL_EDITOR: u32 = 2;
pub const EL_SIGNAL: u32 = 3;
pub const EL_BIND: u32 = 4;
pub const EL_TELLTC: u32 = 5;
pub const EL_SETTC: u32 = 6;
pub const EL_ECHOTC: u32 = 7;
pub const EL_SETTY: u32 = 8;
pub const EL_ADDFN: u32 = 9;
pub const EL_HIST: u32 = 10;
pub const EL_EDITMODE: u32 = 11;
pub const EL_RPROMPT: u32 = 12;
pub const EL_GETCFN: u32 = 13;
pub const EL_CLIENTDATA: u32 = 14;
pub const EL_UNBUFFERED: u32 = 15;
pub const EL_PREP_TERM: u32 = 16;
pub const EL_GETTC: u32 = 17;
pub const EL_GETFP: u32 = 18;
pub const EL_SETFP: u32 = 19;
pub const EL_REFRESH: u32 = 20;
pub const EL_PROMPT_ESC: u32 = 21;
pub const EL_RPROMPT_ESC: u32 = 22;
pub const EL_RESIZE: u32 = 23;
pub const EL_ALIAS_TEXT: u32 = 24;
pub const EL_SAFEREAD: u32 = 25;
pub const H_FUNC: u32 = 0;
pub const H_SETSIZE: u32 = 1;
pub const H_GETSIZE: u32 = 2;
pub const H_FIRST: u32 = 3;
pub const H_LAST: u32 = 4;
pub const H_PREV: u32 = 5;
pub const H_NEXT: u32 = 6;
pub const H_CURR: u32 = 8;
pub const H_SET: u32 = 7;
pub const H_ADD: u32 = 9;
pub const H_ENTER: u32 = 10;
pub const H_APPEND: u32 = 11;
pub const H_END: u32 = 12;
pub const H_NEXT_STR: u32 = 13;
pub const H_PREV_STR: u32 = 14;
pub const H_NEXT_EVENT: u32 = 15;
pub const H_PREV_EVENT: u32 = 16;
pub const H_LOAD: u32 = 17;
pub const H_SAVE: u32 = 18;
pub const H_CLEAR: u32 = 19;
pub const H_SETUNIQUE: u32 = 20;
pub const H_GETUNIQUE: u32 = 21;
pub const H_DEL: u32 = 22;
pub const H_NEXT_EVDATA: u32 = 23;
pub const H_DELDATA: u32 = 24;
pub const H_REPLACE: u32 = 25;
pub const H_SAVE_FP: u32 = 26;
pub const H_NSAVE_FP: u32 = 27;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct editline {
    _unused: [u8; 0],
}
pub type EditLine = editline;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct lineinfo {
    pub buffer: *const ::std::os::raw::c_char,
    pub cursor: *const ::std::os::raw::c_char,
    pub lastchar: *const ::std::os::raw::c_char,
}
impl Default for lineinfo {
    fn default() -> Self {
        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
pub type LineInfo = lineinfo;
unsafe extern "C" {
    pub fn el_init(
        arg1: *const ::std::os::raw::c_char,
        arg2: *mut FILE,
        arg3: *mut FILE,
        arg4: *mut FILE,
    ) -> *mut EditLine;
}
unsafe extern "C" {
    pub fn el_init_fd(
        arg1: *const ::std::os::raw::c_char,
        arg2: *mut FILE,
        arg3: *mut FILE,
        arg4: *mut FILE,
        arg5: ::std::os::raw::c_int,
        arg6: ::std::os::raw::c_int,
        arg7: ::std::os::raw::c_int,
    ) -> *mut EditLine;
}
unsafe extern "C" {
    pub fn el_end(arg1: *mut EditLine);
}
unsafe extern "C" {
    pub fn el_reset(arg1: *mut EditLine);
}
unsafe extern "C" {
    pub fn el_gets(
        arg1: *mut EditLine,
        arg2: *mut ::std::os::raw::c_int,
    ) -> *const ::std::os::raw::c_char;
}
unsafe extern "C" {
    pub fn el_getc(arg1: *mut EditLine, arg2: *mut ::std::os::raw::c_char)
        -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_push(arg1: *mut EditLine, arg2: *const ::std::os::raw::c_char);
}
unsafe extern "C" {
    pub fn el_beep(arg1: *mut EditLine);
}
unsafe extern "C" {
    pub fn el_parse(
        arg1: *mut EditLine,
        arg2: ::std::os::raw::c_int,
        arg3: *mut *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_set(arg1: *mut EditLine, arg2: ::std::os::raw::c_int, ...) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_get(arg1: *mut EditLine, arg2: ::std::os::raw::c_int, ...) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_source(
        arg1: *mut EditLine,
        arg2: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_resize(arg1: *mut EditLine);
}
unsafe extern "C" {
    pub fn el_line(arg1: *mut EditLine) -> *const LineInfo;
}
unsafe extern "C" {
    pub fn el_insertstr(
        arg1: *mut EditLine,
        arg2: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_deletestr(arg1: *mut EditLine, arg2: ::std::os::raw::c_int);
}
unsafe extern "C" {
    pub fn el_replacestr(
        arg1: *mut EditLine,
        arg2: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_deletestr1(
        arg1: *mut EditLine,
        arg2: ::std::os::raw::c_int,
        arg3: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct history {
    _unused: [u8; 0],
}
pub type History = history;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct HistEvent {
    pub num: ::std::os::raw::c_int,
    pub str_: *const ::std::os::raw::c_char,
}
impl Default for HistEvent {
    fn default() -> Self {
        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
unsafe extern "C" {
    pub fn history_init() -> *mut History;
}
unsafe extern "C" {
    pub fn history_end(arg1: *mut History);
}
unsafe extern "C" {
    pub fn history(
        arg1: *mut History,
        arg2: *mut HistEvent,
        arg3: ::std::os::raw::c_int,
        ...
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct tokenizer {
    _unused: [u8; 0],
}
pub type Tokenizer = tokenizer;
unsafe extern "C" {
    pub fn tok_init(arg1: *const ::std::os::raw::c_char) -> *mut Tokenizer;
}
unsafe extern "C" {
    pub fn tok_end(arg1: *mut Tokenizer);
}
unsafe extern "C" {
    pub fn tok_reset(arg1: *mut Tokenizer);
}
unsafe extern "C" {
    pub fn tok_line(
        arg1: *mut Tokenizer,
        arg2: *const LineInfo,
        arg3: *mut ::std::os::raw::c_int,
        arg4: *mut *mut *const ::std::os::raw::c_char,
        arg5: *mut ::std::os::raw::c_int,
        arg6: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn tok_str(
        arg1: *mut Tokenizer,
        arg2: *const ::std::os::raw::c_char,
        arg3: *mut ::std::os::raw::c_int,
        arg4: *mut *mut *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
pub type wchar_t = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct lineinfow {
    pub buffer: *const wchar_t,
    pub cursor: *const wchar_t,
    pub lastchar: *const wchar_t,
}
impl Default for lineinfow {
    fn default() -> Self {
        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
pub type LineInfoW = lineinfow;
unsafe extern "C" {
    pub fn el_wgets(arg1: *mut EditLine, arg2: *mut ::std::os::raw::c_int) -> *const wchar_t;
}
unsafe extern "C" {
    pub fn el_wgetc(arg1: *mut EditLine, arg2: *mut wchar_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_wpush(arg1: *mut EditLine, arg2: *const wchar_t);
}
unsafe extern "C" {
    pub fn el_wparse(
        arg1: *mut EditLine,
        arg2: ::std::os::raw::c_int,
        arg3: *mut *const wchar_t,
    ) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_wset(arg1: *mut EditLine, arg2: ::std::os::raw::c_int, ...) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_wget(arg1: *mut EditLine, arg2: ::std::os::raw::c_int, ...) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_cursor(arg1: *mut EditLine, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_wline(arg1: *mut EditLine) -> *const LineInfoW;
}
unsafe extern "C" {
    pub fn el_winsertstr(arg1: *mut EditLine, arg2: *const wchar_t) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn el_wreplacestr(arg1: *mut EditLine, arg2: *const wchar_t) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct histeventW {
    pub num: ::std::os::raw::c_int,
    pub str_: *const wchar_t,
}
impl Default for histeventW {
    fn default() -> Self {
        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
        unsafe {
            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
            s.assume_init()
        }
    }
}
pub type HistEventW = histeventW;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct historyW {
    _unused: [u8; 0],
}
pub type HistoryW = historyW;
unsafe extern "C" {
    pub fn history_winit() -> *mut HistoryW;
}
unsafe extern "C" {
    pub fn history_wend(arg1: *mut HistoryW);
}
unsafe extern "C" {
    pub fn history_w(
        arg1: *mut HistoryW,
        arg2: *mut HistEventW,
        arg3: ::std::os::raw::c_int,
        ...
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct tokenizerW {
    _unused: [u8; 0],
}
pub type TokenizerW = tokenizerW;
unsafe extern "C" {
    pub fn tok_winit(arg1: *const wchar_t) -> *mut TokenizerW;
}
unsafe extern "C" {
    pub fn tok_wend(arg1: *mut TokenizerW);
}
unsafe extern "C" {
    pub fn tok_wreset(arg1: *mut TokenizerW);
}
unsafe extern "C" {
    pub fn tok_wline(
        arg1: *mut TokenizerW,
        arg2: *const LineInfoW,
        arg3: *mut ::std::os::raw::c_int,
        arg4: *mut *mut *const wchar_t,
        arg5: *mut ::std::os::raw::c_int,
        arg6: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
unsafe extern "C" {
    pub fn tok_wstr(
        arg1: *mut TokenizerW,
        arg2: *const wchar_t,
        arg3: *mut ::std::os::raw::c_int,
        arg4: *mut *mut *const wchar_t,
    ) -> ::std::os::raw::c_int;
}