[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: OOP sortof
- From: Norbert Kiesel <nkiesel@...>
- Date: Sat, 01 Jan 2011 18:12:45 -0800
On Sat, 2011-01-01 at 15:44 +0200, steve donovan wrote:
> A more dynamic solution could look like this:
>
> local property = {width=true,height=true,text=true}
>
> function Box.__newindex(self,prop,value)
> if property[prop] then
> local name = '_'..prop -- i.e. actual field is _width, etc
> if self[name] ~= value then
> self[name] = value
> self:update()
> end
> else
> error("not a property or method",2)
> end
> end
>
Nice. Should the "self[name] = value" not better be a "rawset(self,
name, value)"? Also: how would an auto-wrapper for a getter look like?
</nk>