[webkit-dev] JS: Getter/Setter callbacks at Property level
Brian Barnes
ggadwa at charter.net
Fri Jul 24 06:23:27 PDT 2009
This:
"
2) There's not currently a performance penalty for re-checking the
property name in the catchall getter that you currently have available,
because it gets called without JavaScriptCore doing a property lookup first.
"
Pretty much changes everything for me. Now it's just code I have to
write instead of a possible spot of un-optimal code when "context"
switching between my code and the script engine. I think a way to
one-off way is still more desirable, but this removes my biggest fear.
Note that "JSClassSetPropertyGetterSetter" was just an example, anyway
it's implemented would be fine with me.
[>] Brian
Maciej Stachowiak wrote:
>
> Jumping in late here, but a couple of points:
>
> 1) Instead of JSClassSetPropertyGetterSetter, it might be more in line
> with the class design to be able to define getters and setters in the
> class struct, just as functions are. In addition to being more
> convenient, this API may also provide future optimization
> opportunities when we optimize access to programmatically defined
> properties.
>
> 2) There's not currently a performance penalty for re-checking the
> property name in the catchall getter that you currently have
> available, because it gets called without JavaScriptCore doing a
> property lookup first.
>
> 3) Probably the easiest way to restructure your code with the current
> API is to have a single get function that checks against property
> names, and calls the right individual property getting functions. That
> should require less rewriting, while working mostly in the bounds of
> the current API.
>
> 4) When we add support for ES5 property attributes, it would probably
> make sense to expose this in the API as well, which would make it
> possible to define one-off getters on objects.
>
> - Maciej
>
> On Jul 22, 2009, at 10:26 PM, Geoffrey Garen wrote:
>
>> Sure!
>>
>> Geoff
>>
>> On Jul 20, 2009, at 3:51 PM, Brian Barnes wrote:
>>
>>> What should be my next step, here? Submit a "bug" for this?
>>>
>>> [>] Brian
>>>
>>> On Jul 20, 2009, at 6:05 PM, Geoffrey Garen wrote:
>>>
>>>>> How about separate call backs at the class level? That would
>>>>> solve my problem with minimal code movement. Something like:
>>>>>
>>>>> JSClassSetPropertyGetterSetter(ctx,class,"red",myRedGetter,myRedSetter);
>>>>>
>>>>> Would that be more within the design?
>>>>
>>>> Yes. That's what I had in mind when I mentioned "an API for adding
>>>> C getters and setters to a class individually."
>>>>
>>>> Geoff
>>>>
>>>
>>
>> _______________________________________________
>> webkit-dev mailing list
>> webkit-dev at lists.webkit.org <mailto:webkit-dev at lists.webkit.org>
>> http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
>
More information about the webkit-dev
mailing list