@@ -10,38 +10,19 @@ local evdev = libevdev.lib
1010
1111local libevdev_grab_mode = evdev_enum .libevdev_grab_mode
1212local libevdev_read_flag = evdev_enum .libevdev_read_flag
13- local open_flag = util .enum .open_flag
1413
1514--- @class Device
1615--- @field dev ffi.cdata*
1716local Device = {}
1817
19- --- @param fd_or_pathname ? number | string
20- --- @param flags ? nil | number[]
21- --- @return number fd , string | nil err
22- local function get_fd (fd_or_pathname , flags )
23- local fd
24-
25- if type (fd_or_pathname ) == " number" then
26- fd = fd_or_pathname
27- elseif type (fd_or_pathname ) == " string" then
28- fd = util .open_file (fd_or_pathname , flags or { open_flag .RDONLY , open_flag .NONBLOCK })
29- if fd < 0 then
30- return nil , string.format (" Error: can't open %s - %s" , fd_or_pathname , util .err_string (ffi .errno ()))
31- end
32- end
33-
34- return fd
35- end
36-
3718--- @param fd_or_pathname ? number | string
3819--- @param flags ? nil | number[]
3920--- @return Device
4021local function init (class , fd_or_pathname , flags )
4122 --- @type Device
4223 local self = setmetatable ({}, { __index = class })
4324
44- local fd , fd_err = get_fd (fd_or_pathname , flags )
25+ local fd , fd_err = util . to_fd (fd_or_pathname , flags )
4526 if fd_err then
4627 return nil , fd_err
4728 end
@@ -89,7 +70,7 @@ function Device:fd(fd_or_pathname, flags)
8970 return self ._fd
9071 end
9172
92- local fd , fd_err = get_fd (fd_or_pathname , flags )
73+ local fd , fd_err = util . to_fd (fd_or_pathname , flags )
9374 if fd_err then
9475 return nil , fd_err
9576 end
0 commit comments