Files
dotfiles/nvim/mason/packages/lua-language-server/libexec/script/meta/bee/socket.lua
2025-09-28 11:39:12 +02:00

74 lines
1.3 KiB
Lua

---@meta
---@alias bee.socket.protocol
---| 'tcp'
---| 'udp'
---| 'unix'
---| 'tcp6'
---| 'udp6'
---@class bee.socket
local socket = {}
---@param protocol bee.socket.protocol
---@return bee.socket.fd?
---@return string?
function socket.create(protocol) end
---@param readfds? bee.socket.fd[]
---@param writefds? bee.socket.fd[]
---@param timeout number
---@return bee.socket.fd[] # readfds
---@return bee.socket.fd[] # writefds
function socket.select(readfds, writefds, timeout) end
---@param handle lightuserdata
---@return bee.socket.fd
function socket.fd(handle) end
---@return bee.socket.fd
---@return bee.socket.fd
function socket.pair() end
---@class bee.socket.fd
local fd = {}
---@param addr string
---@param port? integer
---@return boolean
---@return string?
function fd:bind(addr, port) end
function fd:close() end
---@return boolean
---@return string?
function fd:listen() end
---@param addr string
---@param port integer
---@return boolean
---@return string?
function fd:connect(addr, port) end
---@param len? integer
---@return string | false
function fd:recv(len) end
---@param content string
function fd:send(content) end
---@return lightuserdata
function fd:handle() end
---@return lightuserdata
function fd:detach() end
---@return boolean
function fd:status() end
---@return bee.socket.fd
function fd:accept() end
return socket