From f02e58342c61b4ae312344be2805aa019d65541d Mon Sep 17 00:00:00 2001 From: Kevin Date: Tue, 5 Nov 2024 15:53:23 -0300 Subject: core: typing for lua --- lang/lua/astal/binding.lua | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'lang/lua/astal/binding.lua') diff --git a/lang/lua/astal/binding.lua b/lang/lua/astal/binding.lua index 81d2177..9708ef8 100644 --- a/lang/lua/astal/binding.lua +++ b/lang/lua/astal/binding.lua @@ -5,7 +5,9 @@ local GObject = lgi.require("GObject", "2.0") ---@field emitter table|Variable ---@field property? string ---@field transform_fn function +---@overload fun(emitter: table | userdata, property?: string): Binding local Binding = {} +Binding.__index = Binding ---@param emitter table | userdata ---@param property? string @@ -68,5 +70,8 @@ function Binding:subscribe(callback) end end -Binding.__index = Binding -return Binding +return setmetatable(Binding, { + __call = function(_, emitter, prop) + return Binding.new(emitter, prop) + end, +}) -- cgit v1.2.3