mirror of
https://github.com/neovim/neovim.git
synced 2025-09-30 23:18:33 +00:00
API: Refactor: Return handles instead of indexes
- Define specialized arrays for each remote object type - Implement msgpack_rpc functions for dealing with the new types - Refactor all functions dealing with buffers, windows and tabpages to return/accept handles instead of list indexes.
This commit is contained in:
@@ -50,6 +50,9 @@ bool msgpack_rpc_to_window(msgpack_object *obj, Window *arg);
|
||||
bool msgpack_rpc_to_tabpage(msgpack_object *obj, Tabpage *arg);
|
||||
bool msgpack_rpc_to_object(msgpack_object *obj, Object *arg);
|
||||
bool msgpack_rpc_to_stringarray(msgpack_object *obj, StringArray *arg);
|
||||
bool msgpack_rpc_to_bufferarray(msgpack_object *obj, BufferArray *arg);
|
||||
bool msgpack_rpc_to_windowarray(msgpack_object *obj, WindowArray *arg);
|
||||
bool msgpack_rpc_to_tabpagearray(msgpack_object *obj, TabpageArray *arg);
|
||||
bool msgpack_rpc_to_array(msgpack_object *obj, Array *arg);
|
||||
bool msgpack_rpc_to_dictionary(msgpack_object *obj, Dictionary *arg);
|
||||
|
||||
@@ -69,6 +72,9 @@ void msgpack_rpc_from_window(Window result, msgpack_packer *res);
|
||||
void msgpack_rpc_from_tabpage(Tabpage result, msgpack_packer *res);
|
||||
void msgpack_rpc_from_object(Object result, msgpack_packer *res);
|
||||
void msgpack_rpc_from_stringarray(StringArray result, msgpack_packer *res);
|
||||
void msgpack_rpc_from_bufferarray(BufferArray result, msgpack_packer *res);
|
||||
void msgpack_rpc_from_windowarray(WindowArray result, msgpack_packer *res);
|
||||
void msgpack_rpc_from_tabpagearray(TabpageArray result, msgpack_packer *res);
|
||||
void msgpack_rpc_from_array(Array result, msgpack_packer *res);
|
||||
void msgpack_rpc_from_dictionary(Dictionary result, msgpack_packer *res);
|
||||
|
||||
@@ -83,6 +89,9 @@ void msgpack_rpc_from_dictionary(Dictionary result, msgpack_packer *res);
|
||||
#define msgpack_rpc_init_tabpage
|
||||
#define msgpack_rpc_init_object = {.type = kObjectTypeNil}
|
||||
#define msgpack_rpc_init_stringarray = ARRAY_DICT_INIT
|
||||
#define msgpack_rpc_init_bufferarray = ARRAY_DICT_INIT
|
||||
#define msgpack_rpc_init_windowarray = ARRAY_DICT_INIT
|
||||
#define msgpack_rpc_init_tabpagearray = ARRAY_DICT_INIT
|
||||
#define msgpack_rpc_init_array = ARRAY_DICT_INIT
|
||||
#define msgpack_rpc_init_dictionary = ARRAY_DICT_INIT
|
||||
|
||||
@@ -101,6 +110,9 @@ void msgpack_rpc_from_dictionary(Dictionary result, msgpack_packer *res);
|
||||
#define msgpack_rpc_free_tabpage(value)
|
||||
void msgpack_rpc_free_object(Object value);
|
||||
void msgpack_rpc_free_stringarray(StringArray value);
|
||||
void msgpack_rpc_free_bufferarray(BufferArray value);
|
||||
void msgpack_rpc_free_windowarray(WindowArray value);
|
||||
void msgpack_rpc_free_tabpagearray(TabpageArray value);
|
||||
void msgpack_rpc_free_array(Array value);
|
||||
void msgpack_rpc_free_dictionary(Dictionary value);
|
||||
|
||||
|
Reference in New Issue
Block a user