Hi,

I'm working on embedding v8 into our application which has a long history 
with the IE JS engine. I have an issue with using interceptors to catch 
calls to our top-level items. If you compare the following JS code:

   x = thing;

vs

   x = thing();

it appears that the interceptor for the name "thing" expects two different 
results in this case, but doesn't provide any clue as to environment of the 
name usage.  In the first case, the return value from the interceptor 
should be the property value, in the second case, it should be a function, 
which will be called later to get the return value.  Each of these cases 
works independently, but I can't see how I can tell which it is.

Unfortunately, because this was not clearly defined long ago, and because 
the IE engine makes the same COM callback for each case, we have a large 
body of legacy scripts (including many not under our control) that uses 
either mode to mean the same thing.

Ideally, I would like to be able to distinguish these two cases so I can 
handle them both correctly.  Any clues on how I can determine which 
situation the interceptor is being called for would be greatly appreciated!

-- 
-- 
v8-users mailing list
v8-users@googlegroups.com
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to v8-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to