@@ -131,8 +131,6 @@ int libevdev_property_from_name_n(const char *name, size_t len);
131131int libevdev_get_repeat(const struct libevdev *dev, int *delay, int *period);
132132]] )
133133
134- local c = ffi .load (" evdev" )
135-
136134--- @diagnostic disable : undefined-field
137135
138136local enum = {
@@ -198,177 +196,92 @@ enum.libevdev_led_value = {
198196 OFF = enum .LIBEVDEV_LED_OFF ,
199197}
200198
199+ --- @class libevdev : ffi.namespace*
200+ --- @field libevdev_new fun (): ffi.cdata*
201+ --- @field libevdev_new_from_fd fun ( fd : number , dev : ffi.cdata* ): number
202+ --- @field libevdev_free fun ( dev : ffi.cdata* ): nil
203+ --- @field libevdev_set_log_function fun ( logfunc : ffi.cdata* , data : ffi.cdata* ): nil
204+ --- @field libevdev_set_log_priority fun ( priority : number ): nil
205+ --- @field libevdev_get_log_priority fun (): number
206+ --- @field libevdev_set_device_log_function fun ( dev : ffi.cdata* , logfunc : ffi.cdata* , priority : number , data : ffi.cdata* ): nil
207+ --- @field libevdev_grab fun ( dev : ffi.cdata* , grab : number ): number
208+ --- @field libevdev_set_fd fun ( dev : ffi.cdata* , fd : number ): number
209+ --- @field libevdev_change_fd fun ( dev : ffi.cdata* , fd : number ): number
210+ --- @field libevdev_get_fd fun ( dev : ffi.cdata* ): number
211+ --- @field libevdev_next_event fun ( dev : ffi.cdata* , flags : number , ev : ffi.cdata* ): number
212+ --- @field libevdev_has_event_pending fun ( dev : ffi.cdata* ): number
213+ --- @field libevdev_get_name fun ( dev : ffi.cdata* ): ffi.cdata*
214+ --- @field libevdev_set_name fun ( dev : ffi.cdata* , name : ffi.cdata* ): nil
215+ --- @field libevdev_get_phys fun ( dev : ffi.cdata* ): ffi.cdata*
216+ --- @field libevdev_set_phys fun ( dev : ffi.cdata* , phys : ffi.cdata* ): nil
217+ --- @field libevdev_get_uniq fun ( dev : ffi.cdata* ): ffi.cdata*
218+ --- @field libevdev_set_uniq fun ( dev : ffi.cdata* , uniq : ffi.cdata* ): nil
219+ --- @field libevdev_get_id_product fun ( dev : ffi.cdata* ): number
220+ --- @field libevdev_set_id_product fun ( dev : ffi.cdata* , product_id : number ): nil
221+ --- @field libevdev_get_id_vendor fun ( dev : ffi.cdata* ): number
222+ --- @field libevdev_set_id_vendor fun ( dev : ffi.cdata* , vendor_id : number ): nil
223+ --- @field libevdev_get_id_bustype fun ( dev : ffi.cdata* ): number
224+ --- @field libevdev_set_id_bustype fun ( dev : ffi.cdata* , bustype : number ): nil
225+ --- @field libevdev_get_id_version fun ( dev : ffi.cdata* ): number
226+ --- @field libevdev_set_id_version fun ( dev : ffi.cdata* , version : number ): nil
227+ --- @field libevdev_get_driver_version fun ( dev : ffi.cdata* ): number
228+ --- @field libevdev_has_property fun ( dev : ffi.cdata* , prop : number ): number
229+ --- @field libevdev_enable_property fun ( dev : ffi.cdata* , prop : number ): number
230+ --- @field libevdev_disable_property fun ( dev : ffi.cdata* , prop : number ): number
231+ --- @field libevdev_has_event_type fun ( dev : ffi.cdata* , type : number ): number
232+ --- @field libevdev_has_event_code fun ( dev : ffi.cdata* , type : number , code : number ): number
233+ --- @field libevdev_get_abs_minimum fun ( dev : ffi.cdata* , code : number ): number
234+ --- @field libevdev_get_abs_maximum fun ( dev : ffi.cdata* , code : number ): number
235+ --- @field libevdev_get_abs_fuzz fun ( dev : ffi.cdata* , code : number ): number
236+ --- @field libevdev_get_abs_flat fun ( dev : ffi.cdata* , code : number ): number
237+ --- @field libevdev_get_abs_resolution fun ( dev : ffi.cdata* , code : number ): number
238+ --- @field libevdev_get_abs_info fun ( dev : ffi.cdata* , code : number ): ffi.cdata*
239+ --- @field libevdev_get_event_value fun ( dev : ffi.cdata* , type : number , code : number ): number
240+ --- @field libevdev_set_event_value fun ( dev : ffi.cdata* , type : number , code : number , value : number ): number
241+ --- @field libevdev_fetch_event_value fun ( dev : ffi.cdata* , type : number , code : number , value : ffi.cdata* ): number
242+ --- @field libevdev_get_slot_value fun ( dev : ffi.cdata* , slot : number , code : number ): number
243+ --- @field libevdev_set_slot_value fun ( dev : ffi.cdata* , slot : number , code : number , value : number ): number
244+ --- @field libevdev_fetch_slot_value fun ( dev : ffi.cdata* , slot : number , code : number , value : ffi.cdata* ): number
245+ --- @field libevdev_get_num_slots fun ( dev : ffi.cdata* ): number
246+ --- @field libevdev_get_current_slot fun ( dev : ffi.cdata* ): number
247+ --- @field libevdev_set_abs_minimum fun ( dev : ffi.cdata* , code : number , val : number ): nil
248+ --- @field libevdev_set_abs_maximum fun ( dev : ffi.cdata* , code : number , val : number ): nil
249+ --- @field libevdev_set_abs_fuzz fun ( dev : ffi.cdata* , code : number , val : number ): nil
250+ --- @field libevdev_set_abs_flat fun ( dev : ffi.cdata* , code : number , val : number ): nil
251+ --- @field libevdev_set_abs_resolution fun ( dev : ffi.cdata* , code : number , val : number ): nil
252+ --- @field libevdev_set_abs_info fun ( dev : ffi.cdata* , code : number , abs : ffi.cdata* ): nil
253+ --- @field libevdev_enable_event_type fun ( dev : ffi.cdata* , type : number ): number
254+ --- @field libevdev_disable_event_type fun ( dev : ffi.cdata* , type : number ): number
255+ --- @field libevdev_enable_event_code fun ( dev : ffi.cdata* , type : number , code : number , data : ffi.cdata* ): number
256+ --- @field libevdev_disable_event_code fun ( dev : ffi.cdata* , type : number , code : number ): number
257+ --- @field libevdev_kernel_set_abs_info fun ( dev : ffi.cdata* , code : number , abs : ffi.cdata* ): number
258+ --- @field libevdev_kernel_set_led_value fun ( dev : ffi.cdata* , code : number , value : number ): number
259+ --- @field libevdev_kernel_set_led_values fun ( dev : ffi.cdata* , code : number , value : number , ... ): number
260+ --- @field libevdev_set_clock_id fun ( dev : ffi.cdata* , clockid : number ): number
261+ --- @field libevdev_event_is_type fun ( ev : ffi.cdata* , type : number ): number
262+ --- @field libevdev_event_is_code fun ( ev : ffi.cdata* , type : number , code : number ): number
263+ --- @field libevdev_event_type_get_name fun ( type : number ): ffi.cdata*
264+ --- @field libevdev_event_code_get_name fun ( type : number , code : number ): ffi.cdata*
265+ --- @field libevdev_property_get_name fun ( prop : number ): ffi.cdata*
266+ --- @field libevdev_event_type_get_max fun ( type : number ): number
267+ --- @field libevdev_event_type_from_name fun ( name : ffi.cdata* ): number
268+ --- @field libevdev_event_type_from_name_n fun ( name : ffi.cdata* , len : number ): number
269+ --- @field libevdev_event_code_from_name fun ( type : number , name : ffi.cdata* ): number
270+ --- @field libevdev_event_code_from_name_n fun ( type : number , name : ffi.cdata* , len : number ): number
271+ --- @field libevdev_event_value_from_name fun ( type : number , code : number , name : ffi.cdata* ): number
272+ --- @field libevdev_event_type_from_code_name fun ( name : ffi.cdata* ): number
273+ --- @field libevdev_event_type_from_code_name_n fun ( name : ffi.cdata* , len : number ): number
274+ --- @field libevdev_event_code_from_code_name fun ( name : ffi.cdata* ): number
275+ --- @field libevdev_event_code_from_code_name_n fun ( name : ffi.cdata* , len : number ): number
276+ --- @field libevdev_event_value_from_name_n fun ( type : number , code : number , name : ffi.cdata* , len : number ): number
277+ --- @field libevdev_property_from_name fun ( name : ffi.cdata* ): number
278+ --- @field libevdev_property_from_name_n fun ( name : ffi.cdata* , len : number ): number
279+ --- @field libevdev_get_repeat fun ( dev : ffi.cdata* , delay : ffi.cdata* , period : ffi.cdata* ): number
280+ local libevdev = ffi .load (" evdev" )
281+
201282local mod = {
202283 enum = enum ,
203-
204- --- @diagnostic disable : undefined-field
205-
206- --- @type fun (): ffi.cdata*
207- libevdev_new = c .libevdev_new ,
208- --- @type fun ( fd : number , dev : ffi.cdata* ): number
209- libevdev_new_from_fd = c .libevdev_new_from_fd ,
210- --- @type fun ( dev : ffi.cdata* ): nil
211- libevdev_free = c .libevdev_free ,
212-
213- --- @type fun ( logfunc : ffi.cdata* , data : ffi.cdata* ): nil
214- libevdev_set_log_function = c .libevdev_set_log_function ,
215- --- @type fun ( priority : number ): nil
216- libevdev_set_log_priority = c .libevdev_set_log_priority ,
217- --- @type fun (): number
218- libevdev_get_log_priority = c .libevdev_get_log_priority ,
219- --- @type fun ( dev : ffi.cdata* , logfunc : ffi.cdata* , priority : number , data : ffi.cdata* ): nil
220- libevdev_set_device_log_function = c .libevdev_set_device_log_function ,
221-
222- --- @type fun ( dev : ffi.cdata* , grab : number ): number
223- libevdev_grab = c .libevdev_grab ,
224- --- @type fun ( dev : ffi.cdata* , fd : number ): number
225- libevdev_set_fd = c .libevdev_set_fd ,
226- --- @type fun ( dev : ffi.cdata* , fd : number ): number
227- libevdev_change_fd = c .libevdev_change_fd ,
228- --- @type fun ( dev : ffi.cdata* ): number
229- libevdev_get_fd = c .libevdev_get_fd ,
230-
231- --- @type fun ( dev : ffi.cdata* , flags : number , ev : ffi.cdata* ): number
232- libevdev_next_event = c .libevdev_next_event ,
233- --- @type fun ( dev : ffi.cdata* ): number
234- libevdev_has_event_pending = c .libevdev_has_event_pending ,
235- --- @type fun ( dev : ffi.cdata* ): ffi.cdata*
236- libevdev_get_name = c .libevdev_get_name ,
237- --- @type fun ( dev : ffi.cdata* , name : ffi.cdata* ): nil
238- libevdev_set_name = c .libevdev_set_name ,
239- --- @type fun ( dev : ffi.cdata* ): ffi.cdata*
240- libevdev_get_phys = c .libevdev_get_phys ,
241- --- @type fun ( dev : ffi.cdata* , phys : ffi.cdata* ): nil
242- libevdev_set_phys = c .libevdev_set_phys ,
243- --- @type fun ( dev : ffi.cdata* ): ffi.cdata*
244- libevdev_get_uniq = c .libevdev_get_uniq ,
245- --- @type fun ( dev : ffi.cdata* , uniq : ffi.cdata* ): nil
246- libevdev_set_uniq = c .libevdev_set_uniq ,
247- --- @type fun ( dev : ffi.cdata* ): number
248- libevdev_get_id_product = c .libevdev_get_id_product ,
249- --- @type fun ( dev : ffi.cdata* , product_id : number ): nil
250- libevdev_set_id_product = c .libevdev_set_id_product ,
251- --- @type fun ( dev : ffi.cdata* ): number
252- libevdev_get_id_vendor = c .libevdev_get_id_vendor ,
253- --- @type fun ( dev : ffi.cdata* , vendor_id : number ): nil
254- libevdev_set_id_vendor = c .libevdev_set_id_vendor ,
255- --- @type fun ( dev : ffi.cdata* ): number
256- libevdev_get_id_bustype = c .libevdev_get_id_bustype ,
257- --- @type fun ( dev : ffi.cdata* , bustype : number ): nil
258- libevdev_set_id_bustype = c .libevdev_set_id_bustype ,
259- --- @type fun ( dev : ffi.cdata* ): number
260- libevdev_get_id_version = c .libevdev_get_id_version ,
261- --- @type fun ( dev : ffi.cdata* , version : number ): nil
262- libevdev_set_id_version = c .libevdev_set_id_version ,
263- --- @type fun ( dev : ffi.cdata* ): number
264- libevdev_get_driver_version = c .libevdev_get_driver_version ,
265- --- @type fun ( dev : ffi.cdata* , prop : number ): number
266- libevdev_has_property = c .libevdev_has_property ,
267- --- @type fun ( dev : ffi.cdata* , prop : number ): number
268- libevdev_enable_property = c .libevdev_enable_property ,
269- --- @type fun ( dev : ffi.cdata* , prop : number ): number
270- libevdev_disable_property = c .libevdev_disable_property ,
271- --- @type fun ( dev : ffi.cdata* , type : number ): number
272- libevdev_has_event_type = c .libevdev_has_event_type ,
273- --- @type fun ( dev : ffi.cdata* , type : number , code : number ): number
274- libevdev_has_event_code = c .libevdev_has_event_code ,
275- --- @type fun ( dev : ffi.cdata* , code : number ): number
276- libevdev_get_abs_minimum = c .libevdev_get_abs_minimum ,
277- --- @type fun ( dev : ffi.cdata* , code : number ): number
278- libevdev_get_abs_maximum = c .libevdev_get_abs_maximum ,
279- --- @type fun ( dev : ffi.cdata* , code : number ): number
280- libevdev_get_abs_fuzz = c .libevdev_get_abs_fuzz ,
281- --- @type fun ( dev : ffi.cdata* , code : number ): number
282- libevdev_get_abs_flat = c .libevdev_get_abs_flat ,
283- --- @type fun ( dev : ffi.cdata* , code : number ): number
284- libevdev_get_abs_resolution = c .libevdev_get_abs_resolution ,
285- --- @type fun ( dev : ffi.cdata* , code : number ): ffi.cdata*
286- libevdev_get_abs_info = c .libevdev_get_abs_info ,
287- --- @type fun ( dev : ffi.cdata* , type : number , code : number ): number
288- libevdev_get_event_value = c .libevdev_get_event_value ,
289- --- @type fun ( dev : ffi.cdata* , type : number , code : number , value : number ): number
290- libevdev_set_event_value = c .libevdev_set_event_value ,
291- --- @type fun ( dev : ffi.cdata* , type : number , code : number , value : ffi.cdata* ): number
292- libevdev_fetch_event_value = c .libevdev_fetch_event_value ,
293- --- @type fun ( dev : ffi.cdata* , slot : number , code : number ): number
294- libevdev_get_slot_value = c .libevdev_get_slot_value ,
295- --- @type fun ( dev : ffi.cdata* , slot : number , code : number , value : number ): number
296- libevdev_set_slot_value = c .libevdev_set_slot_value ,
297- --- @type fun ( dev : ffi.cdata* , slot : number , code : number , value : ffi.cdata* ): number
298- libevdev_fetch_slot_value = c .libevdev_fetch_slot_value ,
299- --- @type fun ( dev : ffi.cdata* ): number
300- libevdev_get_num_slots = c .libevdev_get_num_slots ,
301- --- @type fun ( dev : ffi.cdata* ): number
302- libevdev_get_current_slot = c .libevdev_get_current_slot ,
303- --- @type fun ( dev : ffi.cdata* , code : number , val : number ): nil
304- libevdev_set_abs_minimum = c .libevdev_set_abs_minimum ,
305- --- @type fun ( dev : ffi.cdata* , code : number , val : number ): nil
306- libevdev_set_abs_maximum = c .libevdev_set_abs_maximum ,
307- --- @type fun ( dev : ffi.cdata* , code : number , val : number ): nil
308- libevdev_set_abs_fuzz = c .libevdev_set_abs_fuzz ,
309- --- @type fun ( dev : ffi.cdata* , code : number , val : number ): nil
310- libevdev_set_abs_flat = c .libevdev_set_abs_flat ,
311- --- @type fun ( dev : ffi.cdata* , code : number , val : number ): nil
312- libevdev_set_abs_resolution = c .libevdev_set_abs_resolution ,
313- --- @type fun ( dev : ffi.cdata* , code : number , abs : ffi.cdata* ): nil
314- libevdev_set_abs_info = c .libevdev_set_abs_info ,
315- --- @type fun ( dev : ffi.cdata* , type : number ): number
316- libevdev_enable_event_type = c .libevdev_enable_event_type ,
317- --- @type fun ( dev : ffi.cdata* , type : number ): number
318- libevdev_disable_event_type = c .libevdev_disable_event_type ,
319- --- @type fun ( dev : ffi.cdata* , type : number , code : number , data : ffi.cdata* ): number
320- libevdev_enable_event_code = c .libevdev_enable_event_code ,
321- --- @type fun ( dev : ffi.cdata* , type : number , code : number ): number
322- libevdev_disable_event_code = c .libevdev_disable_event_code ,
323- --- @type fun ( dev : ffi.cdata* , code : number , abs : ffi.cdata* ): number
324- libevdev_kernel_set_abs_info = c .libevdev_kernel_set_abs_info ,
325-
326- --- @type fun ( dev : ffi.cdata* , code : number , value : number ): number
327- libevdev_kernel_set_led_value = c .libevdev_kernel_set_led_value ,
328- --- @type fun ( dev : ffi.cdata* , code : number , value : number , ... ): number
329- libevdev_kernel_set_led_values = c .libevdev_kernel_set_led_values ,
330- --- @type fun ( dev : ffi.cdata* , clockid : number ): number
331- libevdev_set_clock_id = c .libevdev_set_clock_id ,
332- --- @type fun ( ev : ffi.cdata* , type : number ): number
333- libevdev_event_is_type = c .libevdev_event_is_type ,
334- --- @type fun ( ev : ffi.cdata* , type : number , code : number ): number
335- libevdev_event_is_code = c .libevdev_event_is_code ,
336- --- @type fun ( type : number ): ffi.cdata*
337- libevdev_event_type_get_name = c .libevdev_event_type_get_name ,
338- --- @type fun ( type : number , code : number ): ffi.cdata*
339- libevdev_event_code_get_name = c .libevdev_event_code_get_name ,
340- --- @type fun ( prop : number ): ffi.cdata*
341- libevdev_property_get_name = c .libevdev_property_get_name ,
342- --- @type fun ( type : number ): number
343- libevdev_event_type_get_max = c .libevdev_event_type_get_max ,
344- --- @type fun ( name : ffi.cdata* ): number
345- libevdev_event_type_from_name = c .libevdev_event_type_from_name ,
346- --- @type fun ( name : ffi.cdata* , len : number ): number
347- libevdev_event_type_from_name_n = c .libevdev_event_type_from_name_n ,
348- --- @type fun ( type : number , name : ffi.cdata* ): number
349- libevdev_event_code_from_name = c .libevdev_event_code_from_name ,
350- --- @type fun ( type : number , name : ffi.cdata* , len : number ): number
351- libevdev_event_code_from_name_n = c .libevdev_event_code_from_name_n ,
352- --- @type fun ( type : number , code : number , name : ffi.cdata* ): number
353- libevdev_event_value_from_name = c .libevdev_event_value_from_name ,
354- --- @type fun ( name : ffi.cdata* ): number
355- libevdev_event_type_from_code_name = c .libevdev_event_type_from_code_name ,
356- --- @type fun ( name : ffi.cdata* , len : number ): number
357- libevdev_event_type_from_code_name_n = c .libevdev_event_type_from_code_name_n ,
358- --- @type fun ( name : ffi.cdata* ): number
359- libevdev_event_code_from_code_name = c .libevdev_event_code_from_code_name ,
360- --- @type fun ( name : ffi.cdata* , len : number ): number
361- libevdev_event_code_from_code_name_n = c .libevdev_event_code_from_code_name_n ,
362- --- @type fun ( type : number , code : number , name : ffi.cdata* , len : number ): number
363- libevdev_event_value_from_name_n = c .libevdev_event_value_from_name_n ,
364- --- @type fun ( name : ffi.cdata* ): number
365- libevdev_property_from_name = c .libevdev_property_from_name ,
366- --- @type fun ( name : ffi.cdata* , len : number ): number
367- libevdev_property_from_name_n = c .libevdev_property_from_name_n ,
368- --- @type fun ( dev : ffi.cdata* , delay : ffi.cdata* , period : ffi.cdata* ): number
369- libevdev_get_repeat = c .libevdev_get_repeat ,
370-
371- --- @diagnostic enable : undefined-field
284+ lib = libevdev ,
372285}
373286
374287return mod
0 commit comments