Mercurial > vim
comparison src/proto/channel.pro @ 8041:c6443e78cf2d v7.4.1315
commit https://github.com/vim/vim/commit/7707344ddec9069b495b2a5ed41f2104466fc88b
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Feb 13 23:23:53 2016 +0100
patch 7.4.1315
Problem: Using a channel handle does not allow for freeing it when unused.
Solution: Add the Channel variable type.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 13 Feb 2016 23:30:05 +0100 |
parents | ece323e2b57f |
children | 7c74cafac0a1 |
comparison
equal
deleted
inserted
replaced
8040:306f639c99a8 | 8041:c6443e78cf2d |
---|---|
1 /* channel.c */ | 1 /* channel.c */ |
2 void ch_logfile(FILE *file); | 2 void ch_logfile(FILE *file); |
3 int add_channel(void); | 3 channel_T *add_channel(void); |
4 void channel_free(channel_T *channel); | |
4 void channel_gui_register_all(void); | 5 void channel_gui_register_all(void); |
5 int channel_open(char *hostname, int port_in, int waittime, void (*close_cb)(void)); | 6 channel_T *channel_open(char *hostname, int port_in, int waittime, void (*close_cb)(void)); |
6 void channel_set_pipes(int idx, int in, int out, int err); | 7 void channel_set_pipes(channel_T *channel, int in, int out, int err); |
7 void channel_set_job(int idx, job_T *job); | 8 void channel_set_job(channel_T *channel, job_T *job); |
8 void channel_set_json_mode(int idx, ch_mode_T ch_mode); | 9 void channel_set_json_mode(channel_T *channel, ch_mode_T ch_mode); |
9 void channel_set_timeout(int idx, int timeout); | 10 void channel_set_timeout(channel_T *channel, int timeout); |
10 void channel_set_callback(int idx, char_u *callback); | 11 void channel_set_callback(channel_T *channel, char_u *callback); |
11 void channel_set_req_callback(int idx, char_u *callback, int id); | 12 void channel_set_req_callback(channel_T *channel, char_u *callback, int id); |
12 char_u *channel_get(int idx); | 13 char_u *channel_get(channel_T *channel); |
13 int channel_collapse(int idx); | 14 int channel_collapse(channel_T *channel); |
14 int channel_can_write_to(int idx); | 15 int channel_can_write_to(channel_T *channel); |
15 int channel_is_open(int idx); | 16 int channel_is_open(channel_T *channel); |
16 void channel_close(int idx); | 17 char *channel_status(channel_T *channel); |
17 int channel_save(int idx, char_u *buf, int len); | 18 void channel_close(channel_T *channel); |
18 char_u *channel_peek(int idx); | 19 int channel_save(channel_T *channel, char_u *buf, int len); |
19 void channel_clear(int idx); | 20 char_u *channel_peek(channel_T *channel); |
21 void channel_clear(channel_T *channel); | |
22 void channel_free_all(void); | |
20 int channel_get_id(void); | 23 int channel_get_id(void); |
21 void channel_read(int idx, int use_stderr, char *func); | 24 void channel_read(channel_T *channel, int use_stderr, char *func); |
22 char_u *channel_read_block(int idx); | 25 char_u *channel_read_block(channel_T *channel); |
23 int channel_read_json_block(int ch_idx, int id, typval_T **rettv); | 26 int channel_read_json_block(channel_T *channel, int id, typval_T **rettv); |
24 int channel_fd2idx(sock_T fd); | 27 channel_T *channel_fd2channel(sock_T fd); |
25 int channel_send(int idx, char_u *buf, char *fun); | 28 int channel_send(channel_T *channel, char_u *buf, char *fun); |
26 int channel_poll_setup(int nfd_in, void *fds_in); | 29 int channel_poll_setup(int nfd_in, void *fds_in); |
27 int channel_poll_check(int ret_in, void *fds_in); | 30 int channel_poll_check(int ret_in, void *fds_in); |
28 int channel_select_setup(int maxfd_in, void *rfds_in); | 31 int channel_select_setup(int maxfd_in, void *rfds_in); |
29 int channel_select_check(int ret_in, void *rfds_in); | 32 int channel_select_check(int ret_in, void *rfds_in); |
30 int channel_parse_messages(void); | 33 int channel_parse_messages(void); |
31 int set_ref_in_channel(int copyID); | 34 int set_ref_in_channel(int copyID); |
32 ch_mode_T channel_get_mode(int idx); | 35 ch_mode_T channel_get_mode(channel_T *channel); |
33 /* vim: set ft=c : */ | 36 /* vim: set ft=c : */ |