diff --git a/src/msg.nobj.lua b/src/msg.nobj.lua index 083be0e..bbbe427 100644 --- a/src/msg.nobj.lua +++ b/src/msg.nobj.lua @@ -39,33 +39,25 @@ int zmq_msg_init_size (zmq_msg_t *msg, size_t size); ]], constructor "init" { - var_out{ "ZMQ_Error", "err" }, - c_source[[ - zmq_msg_t tmp; - ${this} = &tmp; - ${err} = zmq_msg_init(${this}); -]], + c_method_call "ZMQ_Error" "zmq_msg_init" {}, }, constructor "init_size" { - var_in{ "size_t", "size" }, - var_out{ "ZMQ_Error", "err" }, - c_source[[ - zmq_msg_t tmp; - ${this} = &tmp; - ${err} = zmq_msg_init_size(${this}, ${size}); -]], + c_method_call "ZMQ_Error" "zmq_msg_init_size" { "size_t", "size" }, }, constructor "init_data" { var_in{ "const char *", "data" }, - var_out{ "ZMQ_Error", "err" }, + c_method_call { "ZMQ_Error", "err" } "zmq_msg_init_size" { "size_t", "#data" }, c_source[[ - zmq_msg_t tmp; - ${this} = &tmp; - ${err} = zmq_msg_init_size(${this}, ${data_len}); if(0 == ${err}) { /* fill message */ memcpy(zmq_msg_data(${this}), ${data}, ${data_len}); } +]], + ffi_source[[ + if(0 == ${err}) then + -- fill message + ffi.copy(C.zmq_msg_data(${this}), ${data}, ${data_len}) + end ]], }, destructor { diff --git a/src/poller.nobj.lua b/src/poller.nobj.lua index d00abeb..2b75b62 100644 --- a/src/poller.nobj.lua +++ b/src/poller.nobj.lua @@ -272,13 +272,6 @@ void poller_remove_item(ZMQ_Poller *poller, int idx); constructor "new" { var_in{ "unsigned int", "length", is_optional = true, default = 10 }, - c_source "pre_src" [[ - ZMQ_Poller poller; - ${this} = &poller; -]], - ffi_source [[ - ${this} = ffi.new("ZMQ_Poller") -]], c_method_call "void" "poller_init" { "unsigned int", "length" }, }, destructor "close" {