I hope I'm not overdoing it with questions, but can someone just verify my
understanding of this concept:
I am looking at all of the Native* classes (NativeArray, NativeNumber,
NativeString, NativeFunction, etc).
If I have a shared scope model in which I load all standard objects via
initStandardObjects() into the root scope, then execute scripts in the
instance scope (shown below):
Instance_Scope_A
/
Root_Scope - Instance_Scope_B
\
Instance_Scope_C
My understanding is that when a script in Instance_Scope_A, for example,
executes "var x = 2.0", that the class NativeNumber is being called; and
this class is then responsible for adding a java.lang.Double into
Instance_Scope_A's attribute bucket (I use "bucket" for lack of the proper
term).
What is not happening (if I understand it correctly) is that an instance of
NativeNumber is being instantiated with a value of 2.0 and being stored in
Instance_Scope_A as an instance of org.apache.javascript.NativeNumber.
If I am indeed wrong, and the latter option is occurring, then is there a
way that I can access the NativeNumber object rather than getting a
java.lang.Double back as I do from ScriptableObject.get(String,Scriptable)?
I'm trying to find a good solution for tracking references to JS objects,
and the latter scenario would have allowed me to do so elegantly (by simply
adding a counter to ScriptableObject), that's why I to verify my
understanding of this detail.
Thanks!
David
_______________________________________________
dev-tech-js-engine-rhino mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-js-engine-rhino