[webkit-dev] why js script" var a = new XMLHttpRequest; ", it's ok; but "var a = new StyleSheet; ", it'll throw an exception?
hyatt at apple.com
Fri Jun 5 07:00:47 PDT 2009
Just a guess, but I believe StyleSheet is abstract, and if you want to
craft a stylesheet, you'd probably use CSSStyleSheet instead.
On Jun 5, 2009, at 3:28 AM, Suk Zhong wrote:
> Hi All:
> We're trying to extend WebKit dom js binding.We have some
> in DOMWindow.idl having the following code:
> attribute StyleSheetConstructor StyleSheet;
> attribute [JSCCustomGetter] XMLHttpRequestConstructor
> and we find class JSXMLHttpRequestConstructor has function
> getConstructData, while JSStyleSheetConstructor doesn't have
> function getConstructData.
> if test the following js script:"var a = new XMLHttpRequest;",
> it's ok;but "var a = new StyleSheet;", it'll throw an exception.
> and we trac this problem to Interpreter::privateExecute() and
> JSValuePtr::getConstructData function
> inline ConstructType JSValuePtr::getConstructData(ConstructData&
> return JSImmediate::isImmediate(asValue()) ?
> ConstructTypeNone : asCell()->getConstructData(constructData);
> and we know this function returns ConstructTypeNone for
> JSStyleSheetConstructor object, ConstructTypeHost for
> JSXMLHttpRequestConstructor object;
> JSStyleSheetConstructor object and JSXMLHttpRequestConstructor
> object are returned by the same template function getDOMConstructor.
> our questions are:
> 1.why it has this return?
> 2.which codes make the two object have different immediate value?
> 3.some people can explain the whole role of class JSImmediate?
> 4.our trac maybe be not correct,who can explain why newing
> StyleSheet has exception and newing XMLHttpRequest is OK?
> Thanks and Best Regards
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
More information about the webkit-dev