[webkit-changes] cvs commit: WebCore/kwq WebCoreScriptDebugger.mm
Darin
darin at opensource.apple.com
Sat Dec 10 16:38:09 PST 2005
darin 05/12/10 16:38:07
Modified: . ChangeLog
bindings NP_jsobject.cpp runtime.h runtime_array.cpp
runtime_method.cpp
bindings/c c_instance.cpp c_runtime.cpp c_utility.cpp
bindings/jni jni_instance.cpp jni_jsobject.cpp
jni_runtime.cpp
bindings/objc WebScriptObject.mm objc_instance.mm
objc_runtime.mm objc_utility.mm
kjs array_object.cpp bool_object.cpp error_object.cpp
function.cpp function_object.cpp internal.cpp
interpreter.h lookup.h math_object.cpp nodes.cpp
nodes.h number_object.cpp object.cpp
object_object.cpp property_slot.cpp
regexp_object.cpp string_object.cpp testkjs.cpp
value.h
. ChangeLog
khtml/ecma domparser.cpp kjs_binding.cpp kjs_binding.h
kjs_css.cpp kjs_dom.cpp kjs_events.cpp kjs_html.cpp
kjs_navigator.cpp kjs_proxy.cpp kjs_range.cpp
kjs_traversal.cpp kjs_views.cpp kjs_window.cpp
xmlhttprequest.cpp xmlserializer.cpp
ksvg2/ecma Ecma.cpp GlobalObject.cpp
kwq WebCoreScriptDebugger.mm
Log:
JavaScriptCore:
Reviewed by Maciej.
- eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
* bindings/NP_jsobject.cpp:
(_NPN_Evaluate):
* bindings/c/c_instance.cpp:
(KJS::Bindings::CInstance::invokeMethod):
(KJS::Bindings::CInstance::invokeDefaultMethod):
* bindings/c/c_runtime.cpp:
(CField::valueFromInstance):
* bindings/c/c_utility.cpp:
(KJS::Bindings::convertNPVariantToValue):
* bindings/jni/jni_instance.cpp:
(JavaInstance::invokeMethod):
(JavaInstance::invokeDefaultMethod):
* bindings/jni/jni_jsobject.cpp:
(JSObject::eval):
(JSObject::convertJObjectToValue):
* bindings/jni/jni_runtime.cpp:
(JavaArray::convertJObjectToArray):
(JavaField::valueFromInstance):
(JavaArray::valueAt):
* bindings/objc/WebScriptObject.mm:
(-[WebScriptObject callWebScriptMethod:withArguments:]):
(-[WebScriptObject evaluateWebScript:]):
(-[WebScriptObject valueForKey:]):
(-[WebScriptObject webScriptValueAtIndex:]):
* bindings/objc/objc_instance.mm:
(ObjcInstance::invokeMethod):
(ObjcInstance::invokeDefaultMethod):
(ObjcInstance::getValueOfUndefinedField):
* bindings/objc/objc_runtime.mm:
(ObjcField::valueFromInstance):
(ObjcFallbackObjectImp::callAsFunction):
* bindings/objc/objc_utility.mm:
(KJS::Bindings::convertNSStringToString):
(KJS::Bindings::convertObjcValueToValue):
* bindings/runtime.h:
(KJS::Bindings::Class::fallbackObject):
(KJS::Bindings::Instance::getValueOfUndefinedField):
(KJS::Bindings::Instance::valueOf):
* bindings/runtime_array.cpp:
(RuntimeArrayImp::lengthGetter):
* bindings/runtime_method.cpp:
(RuntimeMethodImp::lengthGetter):
(RuntimeMethodImp::callAsFunction):
(RuntimeMethodImp::execute):
* kjs/array_object.cpp:
(ArrayInstanceImp::lengthGetter):
(CompareWithCompareFunctionArguments::CompareWithCompareFunctionArguments):
(ArrayPrototypeImp::ArrayPrototypeImp):
(ArrayProtoFuncImp::ArrayProtoFuncImp):
(ArrayProtoFuncImp::callAsFunction):
(ArrayObjectImp::ArrayObjectImp):
* kjs/bool_object.cpp:
(BooleanPrototypeImp::BooleanPrototypeImp):
(BooleanProtoFuncImp::callAsFunction):
(BooleanObjectImp::BooleanObjectImp):
(BooleanObjectImp::callAsFunction):
* kjs/error_object.cpp:
(ErrorPrototypeImp::ErrorPrototypeImp):
(ErrorProtoFuncImp::ErrorProtoFuncImp):
(ErrorProtoFuncImp::callAsFunction):
(ErrorObjectImp::ErrorObjectImp):
(NativeErrorImp::NativeErrorImp):
* kjs/function.cpp:
(KJS::FunctionImp::callAsFunction):
(KJS::FunctionImp::processParameters):
(KJS::FunctionImp::argumentsGetter):
(KJS::FunctionImp::lengthGetter):
(KJS::DeclaredFunctionImp::execute):
(KJS::encode):
(KJS::decode):
(KJS::GlobalFuncImp::callAsFunction):
* kjs/function_object.cpp:
(FunctionPrototypeImp::FunctionPrototypeImp):
(FunctionPrototypeImp::callAsFunction):
(FunctionProtoFuncImp::callAsFunction):
(FunctionObjectImp::FunctionObjectImp):
* kjs/internal.cpp:
(KJS::InterpreterImp::initGlobalObject):
* kjs/interpreter.h:
* kjs/lookup.h:
* kjs/math_object.cpp:
(MathObjectImp::getValueProperty):
(MathFuncImp::callAsFunction):
* kjs/nodes.cpp:
(Node::setExceptionDetailsIfNeeded):
(NullNode::evaluate):
(PropertyNode::evaluate):
(FunctionCallBracketNode::evaluate):
(FunctionCallDotNode::evaluate):
(PostfixBracketNode::evaluate):
(PostfixDotNode::evaluate):
(VoidNode::evaluate):
(PrefixBracketNode::evaluate):
(PrefixDotNode::evaluate):
(ShiftNode::evaluate):
(valueForReadModifyAssignment):
(AssignDotNode::evaluate):
(AssignBracketNode::evaluate):
(VarDeclNode::evaluate):
(VarDeclNode::processVarDecls):
(VarDeclListNode::evaluate):
(ReturnNode::execute):
(CaseClauseNode::evalStatements):
(ParameterNode::evaluate):
(FuncDeclNode::processFuncDecl):
* kjs/nodes.h:
(KJS::StatementNode::evaluate):
* kjs/number_object.cpp:
(NumberPrototypeImp::NumberPrototypeImp):
(NumberProtoFuncImp::callAsFunction):
(NumberObjectImp::NumberObjectImp):
(NumberObjectImp::getValueProperty):
(NumberObjectImp::callAsFunction):
* kjs/object.cpp:
(KJS::ObjectImp::get):
(KJS::Error::create):
* kjs/object_object.cpp:
(ObjectPrototypeImp::ObjectPrototypeImp):
(ObjectProtoFuncImp::callAsFunction):
(ObjectObjectImp::ObjectObjectImp):
* kjs/property_slot.cpp:
(KJS::PropertySlot::undefinedGetter):
* kjs/regexp_object.cpp:
(RegExpPrototypeImp::RegExpPrototypeImp):
(RegExpProtoFuncImp::callAsFunction):
(RegExpObjectImp::RegExpObjectImp):
(RegExpObjectImp::arrayOfMatches):
(RegExpObjectImp::getBackref):
(RegExpObjectImp::getLastMatch):
(RegExpObjectImp::getLastParen):
(RegExpObjectImp::getLeftContext):
(RegExpObjectImp::getRightContext):
(RegExpObjectImp::getValueProperty):
(RegExpObjectImp::construct):
* kjs/string_object.cpp:
(StringInstanceImp::StringInstanceImp):
(StringPrototypeImp::StringPrototypeImp):
(replace):
(StringProtoFuncImp::callAsFunction):
(StringObjectImp::StringObjectImp):
(StringObjectImp::callAsFunction):
(StringObjectFuncImp::StringObjectFuncImp):
(StringObjectFuncImp::callAsFunction):
* kjs/testkjs.cpp:
(TestFunctionImp::callAsFunction):
(VersionFunctionImp::callAsFunction):
* kjs/value.h:
WebCore:
Reviewed by Maciej.
- eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
* khtml/ecma/domparser.cpp:
(KJS::DOMParserProtoFunc::callAsFunction):
* khtml/ecma/kjs_binding.cpp:
(KJS::jsStringOrNull):
(KJS::setDOMException):
* khtml/ecma/kjs_binding.h:
(KJS::DOMFunction::toPrimitive):
* khtml/ecma/kjs_css.cpp:
(KJS::DOMCSSStyleDeclaration::indexGetter):
(KJS::DOMCSSStyleDeclaration::cssPropertyGetter):
(KJS::DOMCSSStyleDeclaration::getValueProperty):
(KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction):
(KJS::DOMStyleSheet::getValueProperty):
(KJS::getDOMStyleSheet):
(KJS::DOMStyleSheetList::getValueProperty):
(KJS::getDOMStyleSheetList):
(KJS::DOMStyleSheetListFunc::callAsFunction):
(KJS::DOMMediaList::getValueProperty):
(KJS::DOMMediaList::indexGetter):
(KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
(KJS::DOMCSSStyleSheet::getValueProperty):
(KJS::DOMCSSStyleSheetProtoFunc::callAsFunction):
(KJS::DOMCSSRuleList::getValueProperty):
(KJS::DOMCSSRuleListFunc::callAsFunction):
(KJS::DOMCSSRule::getValueProperty):
(KJS::DOMCSSRuleFunc::callAsFunction):
(KJS::CSSRuleConstructor::getValueProperty):
(KJS::DOMCSSValue::getValueProperty):
(KJS::getDOMCSSValue):
(KJS::CSSValueConstructor::getValueProperty):
(KJS::DOMCSSPrimitiveValue::getValueProperty):
(KJS::DOMCSSPrimitiveValueProtoFunc::callAsFunction):
(KJS::CSSPrimitiveValueConstructor::getValueProperty):
(KJS::DOMCSSValueList::getValueProperty):
(KJS::DOMCSSValueListFunc::callAsFunction):
(KJS::DOMCounter::getValueProperty):
* khtml/ecma/kjs_dom.cpp:
(KJS::DOMNode::getValueProperty):
(KJS::DOMNode::toPrimitive):
(KJS::DOMNode::getListener):
(KJS::DOMNodeProtoFunc::callAsFunction):
(KJS::DOMNodeList::toPrimitive):
(KJS::DOMNodeList::getValueProperty):
(KJS::DOMNodeList::callAsFunction):
(KJS::DOMAttr::getValueProperty):
(KJS::DOMDocument::getValueProperty):
(KJS::DOMDocumentProtoFunc::callAsFunction):
(KJS::DOMElement::getValueProperty):
(KJS::DOMElement::attributeGetter):
(KJS::DOMElementProtoFunc::callAsFunction):
(KJS::DOMDOMImplementationProtoFunc::callAsFunction):
(KJS::DOMDocumentType::getValueProperty):
(KJS::DOMNamedNodeMap::lengthGetter):
(KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
(KJS::DOMProcessingInstruction::getValueProperty):
(KJS::DOMNotation::getValueProperty):
(KJS::DOMEntity::getValueProperty):
(KJS::getDOMNode):
(KJS::NodeConstructor::getValueProperty):
(KJS::DOMExceptionConstructor::getValueProperty):
(KJS::DOMNamedNodesCollection::lengthGetter):
(KJS::DOMCharacterData::getValueProperty):
(KJS::DOMCharacterDataProtoFunc::callAsFunction):
(KJS::DOMTextProtoFunc::callAsFunction):
* khtml/ecma/kjs_events.cpp:
(KJS::JSLazyEventListener::parseCode):
(KJS::EventConstructor::getValueProperty):
(KJS::DOMEvent::getValueProperty):
(KJS::DOMEventProtoFunc::callAsFunction):
(KJS::getDOMEvent):
(KJS::EventExceptionConstructor::getValueProperty):
(KJS::DOMUIEvent::getValueProperty):
(KJS::DOMUIEventProtoFunc::callAsFunction):
(KJS::DOMMouseEvent::getValueProperty):
(KJS::DOMMouseEventProtoFunc::callAsFunction):
(KJS::DOMKeyboardEvent::getValueProperty):
(KJS::DOMKeyboardEventProtoFunc::callAsFunction):
(KJS::MutationEventConstructor::getValueProperty):
(KJS::DOMMutationEvent::getValueProperty):
(KJS::DOMMutationEventProtoFunc::callAsFunction):
(KJS::DOMWheelEvent::getValueProperty):
(KJS::DOMWheelEventProtoFunc::callAsFunction):
(KJS::stringOrUndefined):
(KJS::Clipboard::getValueProperty):
(KJS::ClipboardProtoFunc::callAsFunction):
* khtml/ecma/kjs_html.cpp:
(KJS::KJS::HTMLDocFunction::callAsFunction):
(KJS::HTMLDocument::getValueProperty):
(KJS::HTMLElement::framesetNameGetter):
(KJS::HTMLElement::frameWindowPropertyGetter):
(KJS::HTMLElement::runtimeObjectPropertyGetter):
(KJS::KJS::HTMLElement::callAsFunction):
(KJS::HTMLElement::htmlGetter):
(KJS::HTMLElement::headGetter):
(KJS::HTMLElement::linkGetter):
(KJS::HTMLElement::titleGetter):
(KJS::HTMLElement::metaGetter):
(KJS::HTMLElement::baseGetter):
(KJS::HTMLElement::isIndexGetter):
(KJS::HTMLElement::styleGetter):
(KJS::HTMLElement::bodyGetter):
(KJS::HTMLElement::formGetter):
(KJS::HTMLElement::selectGetter):
(KJS::HTMLElement::optGroupGetter):
(KJS::HTMLElement::optionGetter):
(KJS::getInputSelectionStart):
(KJS::getInputSelectionEnd):
(KJS::HTMLElement::inputGetter):
(KJS::HTMLElement::textAreaGetter):
(KJS::HTMLElement::buttonGetter):
(KJS::HTMLElement::labelGetter):
(KJS::HTMLElement::fieldSetGetter):
(KJS::HTMLElement::legendGetter):
(KJS::HTMLElement::uListGetter):
(KJS::HTMLElement::oListGetter):
(KJS::HTMLElement::dListGetter):
(KJS::HTMLElement::dirGetter):
(KJS::HTMLElement::menuGetter):
(KJS::HTMLElement::liGetter):
(KJS::HTMLElement::divGetter):
(KJS::HTMLElement::paragraphGetter):
(KJS::HTMLElement::headingGetter):
(KJS::HTMLElement::blockQuoteGetter):
(KJS::HTMLElement::quoteGetter):
(KJS::HTMLElement::preGetter):
(KJS::HTMLElement::brGetter):
(KJS::HTMLElement::baseFontGetter):
(KJS::HTMLElement::fontGetter):
(KJS::HTMLElement::hrGetter):
(KJS::HTMLElement::modGetter):
(KJS::HTMLElement::anchorGetter):
(KJS::HTMLElement::imageGetter):
(KJS::HTMLElement::objectGetter):
(KJS::HTMLElement::paramGetter):
(KJS::HTMLElement::appletGetter):
(KJS::HTMLElement::mapGetter):
(KJS::HTMLElement::areaGetter):
(KJS::HTMLElement::scriptGetter):
(KJS::HTMLElement::tableGetter):
(KJS::HTMLElement::tableCaptionGetter):
(KJS::HTMLElement::tableColGetter):
(KJS::HTMLElement::tableSectionGetter):
(KJS::HTMLElement::tableRowGetter):
(KJS::HTMLElement::tableCellGetter):
(KJS::HTMLElement::frameSetGetter):
(KJS::HTMLElement::frameGetter):
(KJS::HTMLElement::iFrameGetter):
(KJS::HTMLElement::marqueeGetter):
(KJS::HTMLElement::getValueProperty):
(KJS::HTMLElementFunction::HTMLElementFunction):
(KJS::KJS::HTMLElementFunction::callAsFunction):
(KJS::HTMLCollection::lengthGetter):
(KJS::KJS::HTMLCollection::callAsFunction):
(KJS::KJS::HTMLCollection::getNamedItems):
(KJS::KJS::HTMLCollectionProtoFunc::callAsFunction):
(KJS::HTMLSelectCollection::selectedIndexGetter):
(KJS::HTMLSelectCollection::getOwnPropertySlot):
(KJS::OptionConstructorImp::OptionConstructorImp):
(KJS::Image::getValueProperty):
(KJS::KJS::Context2DFunction::callAsFunction):
(KJS::Context2D::getValueProperty):
(KJS::Context2D::Context2D):
(KJS::GradientFunction::callAsFunction):
(KJS::Gradient::getValueProperty):
(KJS::ImagePattern::getValueProperty):
(KJS::getSelectHTMLCollection):
* khtml/ecma/kjs_navigator.cpp:
(KJS::Navigator::getValueProperty):
(KJS::Plugins::getValueProperty):
(KJS::Plugins::nameGetter):
(KJS::MimeTypes::getValueProperty):
(KJS::MimeTypes::nameGetter):
(KJS::Plugin::getValueProperty):
(KJS::Plugin::nameGetter):
(KJS::MimeType::getValueProperty):
(KJS::PluginsFunc::callAsFunction):
(KJS::NavigatorFunc::callAsFunction):
* khtml/ecma/kjs_proxy.cpp:
(TestFunctionImp::callAsFunction):
* khtml/ecma/kjs_range.cpp:
(KJS::DOMRange::getValueProperty):
(KJS::DOMRangeProtoFunc::callAsFunction):
(KJS::RangeConstructor::getValueProperty):
* khtml/ecma/kjs_traversal.cpp:
(KJS::DOMNodeIterator::getValueProperty):
(KJS::DOMNodeIteratorProtoFunc::callAsFunction):
(KJS::NodeFilterConstructor::getValueProperty):
(KJS::DOMNodeFilterProtoFunc::callAsFunction):
(KJS::DOMTreeWalker::getValueProperty):
(KJS::DOMTreeWalkerProtoFunc::callAsFunction):
* khtml/ecma/kjs_views.cpp:
(KJS::DOMAbstractViewProtoFunc::callAsFunction):
* khtml/ecma/kjs_window.cpp:
(KJS::Screen::getValueProperty):
(KJS::Window::retrieve):
(KJS::showModalDialog):
(KJS::Window::getValueProperty):
(KJS::Window::getListener):
(KJS::WindowFunc::callAsFunction):
(KJS::FrameArray::getValueProperty):
(KJS::FrameArray::indexGetter):
(KJS::FrameArray::nameGetter):
(KJS::Location::getValueProperty):
(KJS::Location::toPrimitive):
(KJS::LocationFunc::callAsFunction):
(KJS::Selection::getValueProperty):
(KJS::Selection::toPrimitive):
(KJS::SelectionFunc::callAsFunction):
(KJS::BarInfo::getValueProperty):
(KJS::History::getValueProperty):
(KJS::HistoryFunc::callAsFunction):
* khtml/ecma/xmlhttprequest.cpp:
(KJS::XMLHttpRequest::getValueProperty):
(KJS::XMLHttpRequest::getAllResponseHeaders):
(KJS::XMLHttpRequest::getResponseHeader):
(KJS::XMLHttpRequest::getStatus):
(KJS::XMLHttpRequest::getStatusText):
(KJS::XMLHttpRequestProtoFunc::callAsFunction):
* khtml/ecma/xmlserializer.cpp:
(KJS::XMLSerializerProtoFunc::callAsFunction):
* ksvg2/ecma/Ecma.cpp:
(KSVG::getSVGPathSeg):
* ksvg2/ecma/GlobalObject.cpp:
(GlobalObject::get):
* kwq/WebCoreScriptDebugger.mm:
(-[WebCoreScriptCallFrame evaluateWebScript:]):
Revision Changes Path
1.897 +156 -0 JavaScriptCore/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /cvs/root/JavaScriptCore/ChangeLog,v
retrieving revision 1.896
retrieving revision 1.897
diff -u -r1.896 -r1.897
--- ChangeLog 10 Dec 2005 19:05:19 -0000 1.896
+++ ChangeLog 11 Dec 2005 00:37:42 -0000 1.897
@@ -1,3 +1,159 @@
+2005-12-10 Darin Adler <darin at apple.com>
+
+ Reviewed by Maciej.
+
+ - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
+
+ Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
+
+ * bindings/NP_jsobject.cpp:
+ (_NPN_Evaluate):
+ * bindings/c/c_instance.cpp:
+ (KJS::Bindings::CInstance::invokeMethod):
+ (KJS::Bindings::CInstance::invokeDefaultMethod):
+ * bindings/c/c_runtime.cpp:
+ (CField::valueFromInstance):
+ * bindings/c/c_utility.cpp:
+ (KJS::Bindings::convertNPVariantToValue):
+ * bindings/jni/jni_instance.cpp:
+ (JavaInstance::invokeMethod):
+ (JavaInstance::invokeDefaultMethod):
+ * bindings/jni/jni_jsobject.cpp:
+ (JSObject::eval):
+ (JSObject::convertJObjectToValue):
+ * bindings/jni/jni_runtime.cpp:
+ (JavaArray::convertJObjectToArray):
+ (JavaField::valueFromInstance):
+ (JavaArray::valueAt):
+ * bindings/objc/WebScriptObject.mm:
+ (-[WebScriptObject callWebScriptMethod:withArguments:]):
+ (-[WebScriptObject evaluateWebScript:]):
+ (-[WebScriptObject valueForKey:]):
+ (-[WebScriptObject webScriptValueAtIndex:]):
+ * bindings/objc/objc_instance.mm:
+ (ObjcInstance::invokeMethod):
+ (ObjcInstance::invokeDefaultMethod):
+ (ObjcInstance::getValueOfUndefinedField):
+ * bindings/objc/objc_runtime.mm:
+ (ObjcField::valueFromInstance):
+ (ObjcFallbackObjectImp::callAsFunction):
+ * bindings/objc/objc_utility.mm:
+ (KJS::Bindings::convertNSStringToString):
+ (KJS::Bindings::convertObjcValueToValue):
+ * bindings/runtime.h:
+ (KJS::Bindings::Class::fallbackObject):
+ (KJS::Bindings::Instance::getValueOfUndefinedField):
+ (KJS::Bindings::Instance::valueOf):
+ * bindings/runtime_array.cpp:
+ (RuntimeArrayImp::lengthGetter):
+ * bindings/runtime_method.cpp:
+ (RuntimeMethodImp::lengthGetter):
+ (RuntimeMethodImp::callAsFunction):
+ (RuntimeMethodImp::execute):
+ * kjs/array_object.cpp:
+ (ArrayInstanceImp::lengthGetter):
+ (CompareWithCompareFunctionArguments::CompareWithCompareFunctionArguments):
+ (ArrayPrototypeImp::ArrayPrototypeImp):
+ (ArrayProtoFuncImp::ArrayProtoFuncImp):
+ (ArrayProtoFuncImp::callAsFunction):
+ (ArrayObjectImp::ArrayObjectImp):
+ * kjs/bool_object.cpp:
+ (BooleanPrototypeImp::BooleanPrototypeImp):
+ (BooleanProtoFuncImp::callAsFunction):
+ (BooleanObjectImp::BooleanObjectImp):
+ (BooleanObjectImp::callAsFunction):
+ * kjs/error_object.cpp:
+ (ErrorPrototypeImp::ErrorPrototypeImp):
+ (ErrorProtoFuncImp::ErrorProtoFuncImp):
+ (ErrorProtoFuncImp::callAsFunction):
+ (ErrorObjectImp::ErrorObjectImp):
+ (NativeErrorImp::NativeErrorImp):
+ * kjs/function.cpp:
+ (KJS::FunctionImp::callAsFunction):
+ (KJS::FunctionImp::processParameters):
+ (KJS::FunctionImp::argumentsGetter):
+ (KJS::FunctionImp::lengthGetter):
+ (KJS::DeclaredFunctionImp::execute):
+ (KJS::encode):
+ (KJS::decode):
+ (KJS::GlobalFuncImp::callAsFunction):
+ * kjs/function_object.cpp:
+ (FunctionPrototypeImp::FunctionPrototypeImp):
+ (FunctionPrototypeImp::callAsFunction):
+ (FunctionProtoFuncImp::callAsFunction):
+ (FunctionObjectImp::FunctionObjectImp):
+ * kjs/internal.cpp:
+ (KJS::InterpreterImp::initGlobalObject):
+ * kjs/interpreter.h:
+ * kjs/lookup.h:
+ * kjs/math_object.cpp:
+ (MathObjectImp::getValueProperty):
+ (MathFuncImp::callAsFunction):
+ * kjs/nodes.cpp:
+ (Node::setExceptionDetailsIfNeeded):
+ (NullNode::evaluate):
+ (PropertyNode::evaluate):
+ (FunctionCallBracketNode::evaluate):
+ (FunctionCallDotNode::evaluate):
+ (PostfixBracketNode::evaluate):
+ (PostfixDotNode::evaluate):
+ (VoidNode::evaluate):
+ (PrefixBracketNode::evaluate):
+ (PrefixDotNode::evaluate):
+ (ShiftNode::evaluate):
+ (valueForReadModifyAssignment):
+ (AssignDotNode::evaluate):
+ (AssignBracketNode::evaluate):
+ (VarDeclNode::evaluate):
+ (VarDeclNode::processVarDecls):
+ (VarDeclListNode::evaluate):
+ (ReturnNode::execute):
+ (CaseClauseNode::evalStatements):
+ (ParameterNode::evaluate):
+ (FuncDeclNode::processFuncDecl):
+ * kjs/nodes.h:
+ (KJS::StatementNode::evaluate):
+ * kjs/number_object.cpp:
+ (NumberPrototypeImp::NumberPrototypeImp):
+ (NumberProtoFuncImp::callAsFunction):
+ (NumberObjectImp::NumberObjectImp):
+ (NumberObjectImp::getValueProperty):
+ (NumberObjectImp::callAsFunction):
+ * kjs/object.cpp:
+ (KJS::ObjectImp::get):
+ (KJS::Error::create):
+ * kjs/object_object.cpp:
+ (ObjectPrototypeImp::ObjectPrototypeImp):
+ (ObjectProtoFuncImp::callAsFunction):
+ (ObjectObjectImp::ObjectObjectImp):
+ * kjs/property_slot.cpp:
+ (KJS::PropertySlot::undefinedGetter):
+ * kjs/regexp_object.cpp:
+ (RegExpPrototypeImp::RegExpPrototypeImp):
+ (RegExpProtoFuncImp::callAsFunction):
+ (RegExpObjectImp::RegExpObjectImp):
+ (RegExpObjectImp::arrayOfMatches):
+ (RegExpObjectImp::getBackref):
+ (RegExpObjectImp::getLastMatch):
+ (RegExpObjectImp::getLastParen):
+ (RegExpObjectImp::getLeftContext):
+ (RegExpObjectImp::getRightContext):
+ (RegExpObjectImp::getValueProperty):
+ (RegExpObjectImp::construct):
+ * kjs/string_object.cpp:
+ (StringInstanceImp::StringInstanceImp):
+ (StringPrototypeImp::StringPrototypeImp):
+ (replace):
+ (StringProtoFuncImp::callAsFunction):
+ (StringObjectImp::StringObjectImp):
+ (StringObjectImp::callAsFunction):
+ (StringObjectFuncImp::StringObjectFuncImp):
+ (StringObjectFuncImp::callAsFunction):
+ * kjs/testkjs.cpp:
+ (TestFunctionImp::callAsFunction):
+ (VersionFunctionImp::callAsFunction):
+ * kjs/value.h:
+
2005-12-10 Oliver Hunt <ojh16 at student.canterbury.ac.nz>
Reviewed by Maciej, landed by Darin.
1.26 +2 -2 JavaScriptCore/bindings/NP_jsobject.cpp
Index: NP_jsobject.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/NP_jsobject.cpp,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- NP_jsobject.cpp 27 Nov 2005 07:54:41 -0000 1.25
+++ NP_jsobject.cpp 11 Dec 2005 00:37:45 -0000 1.26
@@ -197,11 +197,11 @@
if (type == Normal) {
result = completion.value();
if (!result) {
- result = Undefined();
+ result = jsUndefined();
}
}
else
- result = Undefined();
+ result = jsUndefined();
free ((void *)scriptString);
1.33 +3 -3 JavaScriptCore/bindings/runtime.h
Index: runtime.h
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/runtime.h,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- runtime.h 16 Sep 2005 22:42:27 -0000 1.32
+++ runtime.h 11 Dec 2005 00:37:45 -0000 1.33
@@ -114,7 +114,7 @@
virtual Field *fieldNamed(const char *name, Instance *instance) const = 0;
- virtual ValueImp *fallbackObject(ExecState *, Instance *, const Identifier &) { return Undefined(); }
+ virtual ValueImp *fallbackObject(ExecState *, Instance *, const Identifier &) { return jsUndefined(); }
virtual ~Class() {}
};
@@ -152,7 +152,7 @@
virtual Class *getClass() const = 0;
virtual ValueImp *getValueOfField(ExecState *exec, const Field *aField) const;
- virtual ValueImp *getValueOfUndefinedField(ExecState *exec, const Identifier &property, Type hint) const { return Undefined(); }
+ virtual ValueImp *getValueOfUndefinedField(ExecState *exec, const Identifier &property, Type hint) const { return jsUndefined(); }
virtual void setValueOfField(ExecState *exec, const Field *aField, ValueImp *aValue) const;
virtual bool supportsSetValueOfUndefinedField() { return false; }
virtual void setValueOfUndefinedField(ExecState *exec, const Identifier &property, ValueImp *aValue) {}
@@ -162,7 +162,7 @@
virtual ValueImp *defaultValue(Type hint) const = 0;
- virtual ValueImp *valueOf() const { return String(getClass()->name()); }
+ virtual ValueImp *valueOf() const { return jsString(getClass()->name()); }
void setExecutionContext(const RootObject *r) { _executionContext = r; }
const RootObject *executionContext() const { return _executionContext; }
1.13 +1 -1 JavaScriptCore/bindings/runtime_array.cpp
Index: runtime_array.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/runtime_array.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- runtime_array.cpp 3 Oct 2005 21:11:41 -0000 1.12
+++ runtime_array.cpp 11 Dec 2005 00:37:45 -0000 1.13
@@ -47,7 +47,7 @@
ValueImp *RuntimeArrayImp::lengthGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
{
RuntimeArrayImp *thisObj = static_cast<RuntimeArrayImp *>(slot.slotBase());
- return Number(thisObj->getLength());
+ return jsNumber(thisObj->getLength());
}
ValueImp *RuntimeArrayImp::indexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
1.15 +3 -3 JavaScriptCore/bindings/runtime_method.cpp
Index: runtime_method.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/runtime_method.cpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- runtime_method.cpp 3 Oct 2005 21:11:41 -0000 1.14
+++ runtime_method.cpp 11 Dec 2005 00:37:45 -0000 1.15
@@ -51,7 +51,7 @@
// Java does.
// FIXME: a better solution might be to give the maximum number of parameters
// of any method
- return Number(thisObj->_methodList.methodAt(0)->numParameters());
+ return jsNumber(thisObj->_methodList.methodAt(0)->numParameters());
}
bool RuntimeMethodImp::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot &slot)
@@ -96,7 +96,7 @@
}
}
- return Undefined();
+ return jsUndefined();
}
CodeType RuntimeMethodImp::codeType() const
@@ -107,6 +107,6 @@
Completion RuntimeMethodImp::execute(ExecState *exec)
{
- return Completion(Normal, Undefined());
+ return Completion(Normal, jsUndefined());
}
1.15 +3 -3 JavaScriptCore/bindings/c/c_instance.cpp
Index: c_instance.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/c/c_instance.cpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- c_instance.cpp 3 Oct 2005 21:11:44 -0000 1.14
+++ c_instance.cpp 11 Dec 2005 00:37:46 -0000 1.15
@@ -108,7 +108,7 @@
NPIdentifier ident = _NPN_GetStringIdentifier (method->name());
if (!_object->_class->hasMethod (_object, ident)) {
- return Undefined();
+ return jsUndefined();
}
unsigned i, count = args.size();
@@ -143,7 +143,7 @@
return resultValue;
}
- return Undefined();
+ return jsUndefined();
}
@@ -185,7 +185,7 @@
}
}
- return Undefined();
+ return jsUndefined();
}
1.9 +1 -1 JavaScriptCore/bindings/c/c_runtime.cpp
Index: c_runtime.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/c/c_runtime.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- c_runtime.cpp 3 Oct 2005 21:11:44 -0000 1.8
+++ c_runtime.cpp 11 Dec 2005 00:37:46 -0000 1.9
@@ -54,7 +54,7 @@
aValue = convertNPVariantToValue (exec, &property);
}
else {
- aValue = Undefined();
+ aValue = jsUndefined();
}
return aValue;
}
1.13 +7 -7 JavaScriptCore/bindings/c/c_utility.cpp
Index: c_utility.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/c/c_utility.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- c_utility.cpp 3 Oct 2005 21:11:44 -0000 1.12
+++ c_utility.cpp 11 Dec 2005 00:37:47 -0000 1.13
@@ -137,22 +137,22 @@
return jsBoolean(false);
}
else if (type == NPVariantType_Null) {
- return Null();
+ return jsNull();
}
else if (type == NPVariantType_Void) {
- return Undefined();
+ return jsUndefined();
}
else if (type == NPVariantType_Int32) {
int32_t anInt;
if (NPN_VariantToInt32(variant, &anInt))
- return Number(anInt);
- return Number(0);
+ return jsNumber(anInt);
+ return jsNumber(0);
}
else if (type == NPVariantType_Double) {
double aDouble;
if (NPN_VariantToDouble(variant, &aDouble))
- return Number(aDouble);
- return Number(0);
+ return jsNumber(aDouble);
+ return jsNumber(0);
}
else if (type == NPVariantType_String) {
NPUTF16 *stringValue;
@@ -176,7 +176,7 @@
}
}
- return Undefined();
+ return jsUndefined();
}
} }
1.32 +13 -13 JavaScriptCore/bindings/jni/jni_instance.cpp
Index: jni_instance.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/jni/jni_instance.cpp,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- jni_instance.cpp 3 Oct 2005 21:11:45 -0000 1.31
+++ jni_instance.cpp 11 Dec 2005 00:37:47 -0000 1.32
@@ -120,7 +120,7 @@
}
if (method == 0) {
JS_LOG ("unable to find an appropiate method\n");
- return Undefined();
+ return jsUndefined();
}
const JavaMethod *jMethod = static_cast<const JavaMethod*>(method);
@@ -154,7 +154,7 @@
if (exceptionDescription) {
throwError(exec, GeneralError, exceptionDescription->toString(exec));
free (jArgs);
- return Undefined();
+ return jsUndefined();
}
}
@@ -222,7 +222,7 @@
switch (jMethod->JNIReturnType()){
case void_type: {
- resultValue = Undefined();
+ resultValue = jsUndefined();
}
break;
@@ -237,33 +237,33 @@
}
}
else {
- resultValue = Undefined();
+ resultValue = jsUndefined();
}
}
break;
case boolean_type: {
- resultValue = Boolean(result.z);
+ resultValue = jsBoolean(result.z);
}
break;
case byte_type: {
- resultValue = Number(result.b);
+ resultValue = jsNumber(result.b);
}
break;
case char_type: {
- resultValue = Number(result.c);
+ resultValue = jsNumber(result.c);
}
break;
case short_type: {
- resultValue = Number(result.s);
+ resultValue = jsNumber(result.s);
}
break;
case int_type: {
- resultValue = Number(result.i);
+ resultValue = jsNumber(result.i);
}
break;
@@ -273,18 +273,18 @@
break;
case float_type: {
- resultValue = Number(result.f);
+ resultValue = jsNumber(result.f);
}
break;
case double_type: {
- resultValue = Number(result.d);
+ resultValue = jsNumber(result.d);
}
break;
case invalid_type:
default: {
- resultValue = Undefined();
+ resultValue = jsUndefined();
}
break;
}
@@ -296,7 +296,7 @@
ValueImp *JavaInstance::invokeDefaultMethod (ExecState *exec, const List &args)
{
- return Undefined();
+ return jsUndefined();
}
1.17 +4 -4 JavaScriptCore/bindings/jni/jni_jsobject.cpp
Index: jni_jsobject.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/jni/jni_jsobject.cpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- jni_jsobject.cpp 27 Nov 2005 07:54:43 -0000 1.16
+++ jni_jsobject.cpp 11 Dec 2005 00:37:47 -0000 1.17
@@ -204,9 +204,9 @@
if (type == Normal) {
result = completion.value();
if (!result)
- result = Undefined();
+ result = jsUndefined();
} else
- result = Undefined();
+ result = jsUndefined();
return convertValueToJObject (result);
}
@@ -412,11 +412,11 @@
JNIEnv *env = getJNIEnv();
jfieldID fieldID = env->GetFieldID((jclass)classOfInstance, "nativeJSObject", "int");
if (fieldID == NULL) {
- return Undefined();
+ return jsUndefined();
}
jlong nativeHandle = env->GetLongField(theObject, fieldID);
if (nativeHandle == UndefinedHandle) {
- return Undefined();
+ return jsUndefined();
}
ObjectImp *imp = static_cast<ObjectImp*>(jlong_to_impptr(nativeHandle));
return imp;
1.31 +17 -20 JavaScriptCore/bindings/jni/jni_runtime.cpp
Index: jni_runtime.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/jni/jni_runtime.cpp,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- jni_runtime.cpp 3 Oct 2005 21:11:45 -0000 1.30
+++ jni_runtime.cpp 11 Dec 2005 00:37:48 -0000 1.31
@@ -71,7 +71,7 @@
ValueImp *JavaArray::convertJObjectToArray (ExecState *exec, jobject anObject, const char *type, const RootObject *r)
{
if (type[0] != '[')
- return Undefined();
+ return jsUndefined();
return new RuntimeArrayImp(exec, new JavaArray((jobject)anObject, type, r));
}
@@ -108,7 +108,7 @@
{
const JavaInstance *instance = static_cast<const JavaInstance *>(i);
- ValueImp *jsresult = Undefined();
+ ValueImp *jsresult = jsUndefined();
switch (_JNIType) {
case object_type: {
@@ -125,12 +125,9 @@
}
break;
- case boolean_type: {
- jvalue result = dispatchValueFromInstance (exec, instance, "getBoolean", "(Ljava/lang/Object;)Z", boolean_type);
- jboolean value = result.z;
- jsresult = Boolean((bool)value);
- }
- break;
+ case boolean_type:
+ jsresult = jsBoolean(dispatchValueFromInstance(exec, instance, "getBoolean", "(Ljava/lang/Object;)Z", boolean_type).z);
+ break;
case byte_type:
case char_type:
@@ -140,7 +137,7 @@
jint value;
jvalue result = dispatchValueFromInstance (exec, instance, "getInt", "(Ljava/lang/Object;)I", int_type);
value = result.i;
- jsresult = Number((int)value);
+ jsresult = jsNumber((int)value);
}
break;
@@ -150,7 +147,7 @@
jdouble value;
jvalue result = dispatchValueFromInstance (exec, instance, "getDouble", "(Ljava/lang/Object;)D", double_type);
value = result.i;
- jsresult = Number((double)value);
+ jsresult = jsNumber((double)value);
}
break;
default:
@@ -471,7 +468,7 @@
// No object?
if (!anObject) {
- return Null();
+ return jsNull();
}
// Nested array?
@@ -486,21 +483,21 @@
jbooleanArray booleanArray = (jbooleanArray)javaArray();
jboolean aBoolean;
env->GetBooleanArrayRegion(booleanArray, index, 1, &aBoolean);
- return Boolean (aBoolean);
+ return jsBoolean(aBoolean);
}
case byte_type: {
jbyteArray byteArray = (jbyteArray)javaArray();
jbyte aByte;
env->GetByteArrayRegion(byteArray, index, 1, &aByte);
- return Number (aByte);
+ return jsNumber(aByte);
}
case char_type: {
jcharArray charArray = (jcharArray)javaArray();
jchar aChar;
env->GetCharArrayRegion(charArray, index, 1, &aChar);
- return Number (aChar);
+ return jsNumber(aChar);
break;
}
@@ -508,40 +505,40 @@
jshortArray shortArray = (jshortArray)javaArray();
jshort aShort;
env->GetShortArrayRegion(shortArray, index, 1, &aShort);
- return Number (aShort);
+ return jsNumber(aShort);
}
case int_type: {
jintArray intArray = (jintArray)javaArray();
jint anInt;
env->GetIntArrayRegion(intArray, index, 1, &anInt);
- return Number (anInt);
+ return jsNumber(anInt);
}
case long_type: {
jlongArray longArray = (jlongArray)javaArray();
jlong aLong;
env->GetLongArrayRegion(longArray, index, 1, &aLong);
- return Number ((long int)aLong);
+ return jsNumber(aLong);
}
case float_type: {
jfloatArray floatArray = (jfloatArray)javaArray();
jfloat aFloat;
env->GetFloatArrayRegion(floatArray, index, 1, &aFloat);
- return Number (aFloat);
+ return jsNumber(aFloat);
}
case double_type: {
jdoubleArray doubleArray = (jdoubleArray)javaArray();
jdouble aDouble;
env->GetDoubleArrayRegion(doubleArray, index, 1, &aDouble);
- return Number (aDouble);
+ return jsNumber(aDouble);
}
default:
break;
}
- return Undefined();
+ return jsUndefined();
}
unsigned int JavaArray::getLength() const
1.28 +6 -6 JavaScriptCore/bindings/objc/WebScriptObject.mm
Index: WebScriptObject.mm
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/objc/WebScriptObject.mm,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- WebScriptObject.mm 27 Nov 2005 07:54:43 -0000 1.27
+++ WebScriptObject.mm 11 Dec 2005 00:37:49 -0000 1.28
@@ -210,7 +210,7 @@
if (exec->hadException()) {
LOG_EXCEPTION (exec);
- result = Undefined();
+ result = jsUndefined();
}
// Convert and return the result of the function call.
@@ -241,13 +241,13 @@
if (type == Normal) {
result = completion.value();
if (!result)
- result = Undefined();
+ result = jsUndefined();
} else
- result = Undefined();
+ result = jsUndefined();
if (exec->hadException()) {
LOG_EXCEPTION (exec);
- result = Undefined();
+ result = jsUndefined();
}
id resultObj = [WebScriptObject _convertValueToObjcValue:result originExecutionContext:[self _originExecutionContext] executionContext:[self _executionContext]];
@@ -294,7 +294,7 @@
if (exec->hadException()) {
LOG_EXCEPTION (exec);
- result = Undefined();
+ result = jsUndefined();
}
id resultObj = [WebScriptObject _convertValueToObjcValue:result originExecutionContext:[self _originExecutionContext] executionContext:[self _executionContext]];
@@ -358,7 +358,7 @@
if (exec->hadException()) {
LOG_EXCEPTION (exec);
- result = Undefined();
+ result = jsUndefined();
}
id resultObj = [WebScriptObject _convertValueToObjcValue:result originExecutionContext:[self _originExecutionContext] executionContext:[self _executionContext]];
1.16 +7 -7 JavaScriptCore/bindings/objc/objc_instance.mm
Index: objc_instance.mm
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/objc/objc_instance.mm,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- objc_instance.mm 9 Nov 2005 06:34:56 -0000 1.15
+++ objc_instance.mm 11 Dec 2005 00:37:49 -0000 1.16
@@ -143,7 +143,7 @@
if (method->isFallbackMethod()) {
if (objcValueTypeForType([signature methodReturnType]) != ObjcObjectType) {
NSLog(@"Incorrect signature for invokeUndefinedMethodFromWebScript:withArguments: -- return type must be object.");
- NS_VALUERETURN(Undefined(), ValueImp *);
+ NS_VALUERETURN(jsUndefined(), ValueImp *);
}
// Invoke invokeUndefinedMethodFromWebScript:withArguments:, pass JavaScript function
@@ -223,7 +223,7 @@
assert ([signature methodReturnLength] < 1024);
if (*type == 'v') {
- resultValue = Undefined();
+ resultValue = jsUndefined();
}
else {
[invocation getReturnValue:buffer];
@@ -232,7 +232,7 @@
NS_HANDLER
- resultValue = Undefined();
+ resultValue = jsUndefined();
NS_ENDHANDLER
@@ -246,7 +246,7 @@
NS_DURING
if (![_instance respondsToSelector:@selector(invokeDefaultMethodWithArguments:)])
- NS_VALUERETURN(Undefined(), ValueImp *);
+ NS_VALUERETURN(jsUndefined(), ValueImp *);
NSMethodSignature *signature = [_instance methodSignatureForSelector:@selector(invokeDefaultMethodWithArguments:)];
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:signature];
@@ -256,7 +256,7 @@
if (objcValueTypeForType([signature methodReturnType]) != ObjcObjectType) {
NSLog(@"Incorrect signature for invokeDefaultMethodWithArguments: -- return type must be object.");
- NS_VALUERETURN(Undefined(), ValueImp *);
+ NS_VALUERETURN(jsUndefined(), ValueImp *);
}
NSMutableArray *objcArgs = [NSMutableArray array];
@@ -283,7 +283,7 @@
NS_HANDLER
- resultValue = Undefined();
+ resultValue = jsUndefined();
NS_ENDHANDLER
@@ -334,7 +334,7 @@
ValueImp *ObjcInstance::getValueOfUndefinedField (ExecState *exec, const Identifier &property, Type hint) const
{
- ValueImp *volatile result = Undefined();
+ ValueImp *volatile result = jsUndefined();
id targetObject = getObject();
1.23 +2 -2 JavaScriptCore/bindings/objc/objc_runtime.mm
Index: objc_runtime.mm
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/objc/objc_runtime.mm,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- objc_runtime.mm 3 Oct 2005 21:11:47 -0000 1.22
+++ objc_runtime.mm 11 Dec 2005 00:37:49 -0000 1.23
@@ -123,7 +123,7 @@
if (objcValue)
aValue = convertObjcValueToValue (exec, &objcValue, ObjcObjectType);
else
- aValue = Undefined();
+ aValue = jsUndefined();
return aValue;
}
@@ -299,7 +299,7 @@
ValueImp *ObjcFallbackObjectImp::callAsFunction(ExecState *exec, ObjectImp *thisObj, const List &args)
{
- ValueImp *result = Undefined();
+ ValueImp *result = jsUndefined();
RuntimeObjectImp *imp = static_cast<RuntimeObjectImp*>(thisObj);
if (imp) {
1.22 +24 -51 JavaScriptCore/bindings/objc/objc_utility.mm
Index: objc_utility.mm
===================================================================
RCS file: /cvs/root/JavaScriptCore/bindings/objc/objc_utility.mm,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- objc_utility.mm 3 Oct 2005 21:11:47 -0000 1.21
+++ objc_utility.mm 11 Dec 2005 00:37:49 -0000 1.22
@@ -173,7 +173,7 @@
chars = (unichar *)malloc(sizeof(unichar)*length);
[nsstring getCharacters:chars];
UString u((const UChar*)chars, length);
- ValueImp *aValue = String (u);
+ ValueImp *aValue = jsString(u);
free((void *)chars);
return aValue;
}
@@ -210,78 +210,51 @@
id to Object wrapper
*/
if ([*obj isKindOfClass:[NSString class]]){
- NSString *string = (NSString *)*obj;
- aValue = convertNSStringToString (string);
- }
- else if (*obj == [WebUndefined undefined]) {
- return Undefined();
- }
- else if ((CFBooleanRef)*obj == kCFBooleanTrue) {
- aValue = Boolean(true);
- }
- else if ((CFBooleanRef)*obj == kCFBooleanFalse) {
- aValue = Boolean(false);
- }
- else if ([*obj isKindOfClass:[NSNumber class]]) {
- aValue = Number([*obj doubleValue]);
- }
- else if ([*obj isKindOfClass:[NSArray class]]) {
- aValue = new RuntimeArrayImp(exec, new ObjcArray (*obj));
- }
- else if ([*obj isKindOfClass:[WebScriptObject class]]) {
+ aValue = convertNSStringToString((NSString *)*obj);
+ } else if (*obj == [WebUndefined undefined]) {
+ return jsUndefined();
+ } else if ((CFBooleanRef)*obj == kCFBooleanTrue) {
+ aValue = jsBoolean(true);
+ } else if ((CFBooleanRef)*obj == kCFBooleanFalse) {
+ aValue = jsBoolean(false);
+ } else if ([*obj isKindOfClass:[NSNumber class]]) {
+ aValue = jsNumber([*obj doubleValue]);
+ } else if ([*obj isKindOfClass:[NSArray class]]) {
+ aValue = new RuntimeArrayImp(exec, new ObjcArray(*obj));
+ } else if ([*obj isKindOfClass:[WebScriptObject class]]) {
WebScriptObject *jsobject = (WebScriptObject *)*obj;
aValue = [jsobject _imp];
- }
- else if (*obj == 0) {
- return Undefined();
- }
- else {
+ } else if (*obj == 0) {
+ return jsUndefined();
+ } else {
aValue = Instance::createRuntimeObject(Instance::ObjectiveCLanguage, (void *)*obj);
}
}
break;
case ObjcCharType:
- {
- char *objcVal = (char *)buffer;
- aValue = Number ((short)*objcVal);
- }
+ aValue = jsNumber(*(char *)buffer);
break;
case ObjcShortType:
- {
- short *objcVal = (short *)buffer;
- aValue = Number ((short)*objcVal);
- }
+ aValue = jsNumber(*(short *)buffer);
break;
case ObjcIntType:
- {
- int *objcVal = (int *)buffer;
- aValue = Number ((int)*objcVal);
- }
+ aValue = jsNumber(*(int *)buffer);
break;
case ObjcLongType:
- {
- long *objcVal = (long *)buffer;
- aValue = Number ((long)*objcVal);
- }
+ aValue = jsNumber(*(long *)buffer);
break;
case ObjcFloatType:
- {
- float *objcVal = (float *)buffer;
- aValue = Number ((float)*objcVal);
- }
+ aValue = jsNumber(*(float *)buffer);
break;
case ObjcDoubleType:
- {
- double *objcVal = (double *)buffer;
- aValue = Number ((double)*objcVal);
- }
+ aValue = jsNumber(*(double *)buffer);
break;
default:
// Should never get here. Argument types are filtered (and
// the assert above should have fired in the impossible case
// of an invalid type anyway).
- fprintf (stderr, "%s: invalid type (%d)\n", __PRETTY_FUNCTION__, (int)type);
- assert (true);
+ fprintf(stderr, "%s: invalid type (%d)\n", __PRETTY_FUNCTION__, (int)type);
+ assert(false);
}
return aValue;
1.56 +26 -26 JavaScriptCore/kjs/array_object.cpp
Index: array_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/array_object.cpp,v
retrieving revision 1.55
retrieving revision 1.56
diff -u -r1.55 -r1.56
--- array_object.cpp 10 Dec 2005 19:05:21 -0000 1.55
+++ array_object.cpp 11 Dec 2005 00:37:50 -0000 1.56
@@ -76,7 +76,7 @@
ValueImp *ArrayInstanceImp::lengthGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
{
- return Number(static_cast<ArrayInstanceImp *>(slot.slotBase())->length);
+ return jsNumber(static_cast<ArrayInstanceImp *>(slot.slotBase())->length);
}
bool ArrayInstanceImp::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -291,8 +291,8 @@
, compareFunction(cf)
, globalObject(e->dynamicInterpreter()->globalObject())
{
- arguments.append(Undefined());
- arguments.append(Undefined());
+ arguments.append(jsUndefined());
+ arguments.append(jsUndefined());
}
ExecState *exec;
@@ -400,7 +400,7 @@
ObjectPrototypeImp *objProto)
: ArrayInstanceImp(objProto, 0)
{
- setInternalValue(Null());
+ setInternalValue(jsNull());
}
bool ArrayPrototypeImp::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -415,7 +415,7 @@
static_cast<FunctionPrototypeImp*>(exec->lexicalInterpreter()->builtinFunctionPrototype())
), id(i)
{
- put(exec,lengthPropertyName,Number(len),DontDelete|ReadOnly|DontEnum);
+ put(exec,lengthPropertyName,jsNumber(len),DontDelete|ReadOnly|DontEnum);
}
bool ArrayProtoFuncImp::implementsCall() const
@@ -494,7 +494,7 @@
break;
}
visitedElems.remove(thisObj);
- result = String(str);
+ result = jsString(str);
break;
}
case Concat: {
@@ -525,18 +525,18 @@
curArg = *it;
curObj = static_cast<ObjectImp *>(it++); // may be 0
}
- arr->put(exec,lengthPropertyName, Number(n), DontEnum | DontDelete);
+ arr->put(exec,lengthPropertyName, jsNumber(n), DontEnum | DontDelete);
result = arr;
break;
}
case Pop:{
if (length == 0) {
- thisObj->put(exec, lengthPropertyName, Number(length), DontEnum | DontDelete);
- result = Undefined();
+ thisObj->put(exec, lengthPropertyName, jsNumber(length), DontEnum | DontDelete);
+ result = jsUndefined();
} else {
result = thisObj->get(exec, length - 1);
- thisObj->put(exec, lengthPropertyName, Number(length - 1), DontEnum | DontDelete);
+ thisObj->put(exec, lengthPropertyName, jsNumber(length - 1), DontEnum | DontDelete);
}
break;
}
@@ -544,8 +544,8 @@
for (int n = 0; n < args.size(); n++)
thisObj->put(exec, length + n, args[n]);
length += args.size();
- thisObj->put(exec,lengthPropertyName, Number(length), DontEnum | DontDelete);
- result = Number(length);
+ thisObj->put(exec,lengthPropertyName, jsNumber(length), DontEnum | DontDelete);
+ result = jsNumber(length);
break;
}
case Reverse: {
@@ -572,8 +572,8 @@
}
case Shift: {
if (length == 0) {
- thisObj->put(exec, lengthPropertyName, Number(length), DontEnum | DontDelete);
- result = Undefined();
+ thisObj->put(exec, lengthPropertyName, jsNumber(length), DontEnum | DontDelete);
+ result = jsUndefined();
} else {
result = thisObj->get(exec, 0);
for(unsigned int k = 1; k < length; k++) {
@@ -583,7 +583,7 @@
thisObj->deleteProperty(exec, k-1);
}
thisObj->deleteProperty(exec, length - 1);
- thisObj->put(exec, lengthPropertyName, Number(length - 1), DontEnum | DontDelete);
+ thisObj->put(exec, lengthPropertyName, jsNumber(length - 1), DontEnum | DontDelete);
}
break;
}
@@ -626,7 +626,7 @@
if (ValueImp *v = getProperty(exec, thisObj, k))
resObj->put(exec, n, v);
}
- resObj->put(exec, lengthPropertyName, Number(n), DontEnum | DontDelete);
+ resObj->put(exec, lengthPropertyName, jsNumber(n), DontEnum | DontDelete);
break;
}
case Sort:{
@@ -653,7 +653,7 @@
}
if (length == 0) {
- thisObj->put(exec, lengthPropertyName, Number(0), DontEnum | DontDelete);
+ thisObj->put(exec, lengthPropertyName, jsNumber(0), DontEnum | DontDelete);
result = thisObj;
break;
}
@@ -719,7 +719,7 @@
if (ValueImp *v = getProperty(exec, thisObj, k+begin))
resObj->put(exec, k, v);
}
- resObj->put(exec, lengthPropertyName, Number(deleteCount), DontEnum | DontDelete);
+ resObj->put(exec, lengthPropertyName, jsNumber(deleteCount), DontEnum | DontDelete);
unsigned int additionalArgs = maxInt( args.size() - 2, 0 );
if ( additionalArgs != deleteCount )
@@ -751,7 +751,7 @@
{
thisObj->put(exec, k+begin, args[k+2]);
}
- thisObj->put(exec, lengthPropertyName, Number(length - deleteCount + additionalArgs), DontEnum | DontDelete);
+ thisObj->put(exec, lengthPropertyName, jsNumber(length - deleteCount + additionalArgs), DontEnum | DontDelete);
break;
}
case UnShift: { // 15.4.4.13
@@ -765,7 +765,7 @@
}
for ( unsigned int k = 0; k < nrArgs; ++k )
thisObj->put(exec, k, args[k]);
- result = Number(length + nrArgs);
+ result = jsNumber(length + nrArgs);
thisObj->put(exec, lengthPropertyName, result, DontEnum | DontDelete);
break;
}
@@ -785,7 +785,7 @@
ObjectImp *applyThis = args[1]->isUndefinedOrNull() ? exec->dynamicInterpreter()->globalObject() : args[1]->toObject(exec);
if (id == Some || id == Every)
- result = Boolean(id == Every);
+ result = jsBoolean(id == Every);
else
result = thisObj;
@@ -794,17 +794,17 @@
List eachArguments;
eachArguments.append(thisObj->get(exec, k));
- eachArguments.append(Number(k));
+ eachArguments.append(jsNumber(k));
eachArguments.append(thisObj);
bool predicateResult = eachFunction->call(exec, applyThis, eachArguments)->toBoolean(exec);
if (id == Every && !predicateResult) {
- result = Boolean(false);
+ result = jsBoolean(false);
break;
}
if (id == Some && predicateResult) {
- result = Boolean(true);
+ result = jsBoolean(true);
break;
}
}
@@ -827,10 +827,10 @@
: InternalFunctionImp(funcProto)
{
// ECMA 15.4.3.1 Array.prototype
- put(exec,prototypePropertyName, arrayProto, DontEnum|DontDelete|ReadOnly);
+ put(exec, prototypePropertyName, arrayProto, DontEnum|DontDelete|ReadOnly);
// no. of arguments for constructor
- put(exec,lengthPropertyName, Number(1), ReadOnly|DontDelete|DontEnum);
+ put(exec, lengthPropertyName, jsNumber(1), ReadOnly|DontDelete|DontEnum);
}
bool ArrayObjectImp::implementsConstruct() const
1.15 +6 -6 JavaScriptCore/kjs/bool_object.cpp
Index: bool_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/bool_object.cpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- bool_object.cpp 3 Oct 2005 21:11:48 -0000 1.14
+++ bool_object.cpp 11 Dec 2005 00:37:50 -0000 1.15
@@ -55,7 +55,7 @@
putDirect(toStringPropertyName, new BooleanProtoFuncImp(exec,funcProto,BooleanProtoFuncImp::ToString,0), DontEnum);
putDirect(valueOfPropertyName, new BooleanProtoFuncImp(exec,funcProto,BooleanProtoFuncImp::ValueOf,0), DontEnum);
- setInternalValue(Boolean(false));
+ setInternalValue(jsBoolean(false));
}
@@ -88,8 +88,8 @@
assert(v);
if (id == ToString)
- return String(v->toString(exec));
- return Boolean(v->toBoolean(exec)); /* TODO: optimize for bool case */
+ return jsString(v->toString(exec));
+ return jsBoolean(v->toBoolean(exec)); /* TODO: optimize for bool case */
}
// ------------------------------ BooleanObjectImp -----------------------------
@@ -102,7 +102,7 @@
putDirect(prototypePropertyName, booleanProto, DontEnum|DontDelete|ReadOnly);
// no. of arguments for constructor
- putDirect(lengthPropertyName, jsOne(), ReadOnly|DontDelete|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(1), ReadOnly|DontDelete|DontEnum);
}
@@ -136,8 +136,8 @@
ValueImp *BooleanObjectImp::callAsFunction(ExecState *exec, ObjectImp */*thisObj*/, const List &args)
{
if (args.isEmpty())
- return Boolean(false);
+ return jsBoolean(false);
else
- return Boolean(args[0]->toBoolean(exec)); /* TODO: optimize for bool case */
+ return jsBoolean(args[0]->toBoolean(exec)); /* TODO: optimize for bool case */
}
1.20 +8 -8 JavaScriptCore/kjs/error_object.cpp
Index: error_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/error_object.cpp,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- error_object.cpp 3 Oct 2005 21:11:48 -0000 1.19
+++ error_object.cpp 11 Dec 2005 00:37:50 -0000 1.20
@@ -48,11 +48,11 @@
FunctionPrototypeImp *funcProto)
: ObjectImp(objectProto)
{
- setInternalValue(Undefined());
+ setInternalValue(jsUndefined());
// The constructor will be added later in ErrorObjectImp's constructor
- put(exec, namePropertyName, String("Error"), DontEnum);
- put(exec, messagePropertyName, String("Unknown error"), DontEnum);
+ put(exec, namePropertyName, jsString("Error"), DontEnum);
+ put(exec, messagePropertyName, jsString("Unknown error"), DontEnum);
putDirect(toStringPropertyName, new ErrorProtoFuncImp(exec,funcProto), DontEnum);
}
@@ -61,7 +61,7 @@
ErrorProtoFuncImp::ErrorProtoFuncImp(ExecState *exec, FunctionPrototypeImp *funcProto)
: InternalFunctionImp(funcProto)
{
- putDirect(lengthPropertyName, jsZero(), DontDelete|ReadOnly|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(0), DontDelete|ReadOnly|DontEnum);
}
bool ErrorProtoFuncImp::implementsCall() const
@@ -84,7 +84,7 @@
s += ": " + v->toString(exec); // Mozilla compatible format
}
- return String(s);
+ return jsString(s);
}
// ------------------------------ ErrorObjectImp -------------------------------
@@ -95,8 +95,8 @@
{
// ECMA 15.11.3.1 Error.prototype
putDirect(prototypePropertyName, errorProto, DontEnum|DontDelete|ReadOnly);
- putDirect(lengthPropertyName, jsOne(), DontDelete|ReadOnly|DontEnum);
- //putDirect(namePropertyName, String(n));
+ putDirect(lengthPropertyName, jsNumber(1), DontDelete|ReadOnly|DontEnum);
+ //putDirect(namePropertyName, jsString(n));
}
bool ErrorObjectImp::implementsConstruct() const
@@ -148,7 +148,7 @@
ObjectImp *prot)
: InternalFunctionImp(funcProto), proto(prot)
{
- putDirect(lengthPropertyName, jsOne(), DontDelete|ReadOnly|DontEnum); // ECMA 15.11.7.5
+ putDirect(lengthPropertyName, jsNumber(1), DontDelete|ReadOnly|DontEnum); // ECMA 15.11.7.5
putDirect(prototypePropertyName, proto, DontDelete|ReadOnly|DontEnum);
}
1.62 +17 -17 JavaScriptCore/kjs/function.cpp
Index: function.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/function.cpp,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -r1.61 -r1.62
--- function.cpp 1 Dec 2005 10:31:58 -0000 1.61
+++ function.cpp 11 Dec 2005 00:37:50 -0000 1.62
@@ -100,7 +100,7 @@
bool cont = dbg->callEvent(&newExec,sid,lineno,this,args);
if (!cont) {
dbg->imp()->abort();
- return Undefined();
+ return jsUndefined();
}
}
@@ -129,7 +129,7 @@
int cont = dbg->returnEvent(&newExec,sid,lineno,this);
if (!cont) {
dbg->imp()->abort();
- return Undefined();
+ return jsUndefined();
}
}
@@ -140,7 +140,7 @@
else if (comp.complType() == ReturnValue)
return comp.value();
else
- return Undefined();
+ return jsUndefined();
}
void FunctionImp::addParameter(const Identifier &n)
@@ -190,7 +190,7 @@
variable->put(exec, p->name, *it);
it++;
} else
- variable->put(exec, p->name, Undefined());
+ variable->put(exec, p->name, jsUndefined());
p = p->next;
}
}
@@ -216,7 +216,7 @@
}
context = context->callingContext();
}
- return Null();
+ return jsNull();
}
ValueImp *FunctionImp::lengthGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -228,7 +228,7 @@
++count;
p = p->next;
}
- return Number(count);
+ return jsNumber(count);
}
bool FunctionImp::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -337,7 +337,7 @@
if (result.complType() == Throw || result.complType() == ReturnValue)
return result;
- return Completion(Normal, Undefined()); // TODO: or ReturnValue ?
+ return Completion(Normal, jsUndefined()); // TODO: or ReturnValue ?
}
void DeclaredFunctionImp::processVarDecls(ExecState *exec)
@@ -575,7 +575,7 @@
r += tmp;
}
}
- return String(r);
+ return jsString(r);
}
static ValueImp *decode(ExecState *exec, const List &args, const char *do_not_unescape, bool strict)
@@ -640,7 +640,7 @@
k++;
s.append(c);
}
- return String(s);
+ return jsString(s);
}
static bool isStrWhiteSpace(unsigned short c)
@@ -787,7 +787,7 @@
if (dbg) {
bool cont = dbg->sourceParsed(exec, sid, UString(), s, errLine);
if (!cont)
- return Undefined();
+ return jsUndefined();
}
// no program node means a syntax occurred
@@ -814,7 +814,7 @@
if (newExec.hadException())
exec->setException(newExec.exception());
- res = Undefined();
+ res = jsUndefined();
if (c.complType() == Throw)
exec->setException(c.value());
else if (c.isValueCompletion())
@@ -823,17 +823,17 @@
break;
}
case ParseInt:
- res = Number(parseInt(args[0]->toString(exec), args[1]->toInt32(exec)));
+ res = jsNumber(parseInt(args[0]->toString(exec), args[1]->toInt32(exec)));
break;
case ParseFloat:
- res = Number(parseFloat(args[0]->toString(exec)));
+ res = jsNumber(parseFloat(args[0]->toString(exec)));
break;
case IsNaN:
- res = Boolean(isNaN(args[0]->toNumber(exec)));
+ res = jsBoolean(isNaN(args[0]->toNumber(exec)));
break;
case IsFinite: {
double n = args[0]->toNumber(exec);
- res = Boolean(!isNaN(n) && !isInf(n));
+ res = jsBoolean(!isNaN(n) && !isInf(n));
break;
}
case DecodeURI:
@@ -867,7 +867,7 @@
}
r += s;
}
- res = String(r);
+ res = jsString(r);
break;
}
case UnEscape:
@@ -894,7 +894,7 @@
k++;
s += UString(c, 1);
}
- res = String(s);
+ res = jsString(s);
break;
}
#ifndef NDEBUG
1.35 +6 -6 JavaScriptCore/kjs/function_object.cpp
Index: function_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/function_object.cpp,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- function_object.cpp 1 Dec 2005 10:31:59 -0000 1.34
+++ function_object.cpp 11 Dec 2005 00:37:51 -0000 1.35
@@ -40,7 +40,7 @@
FunctionPrototypeImp::FunctionPrototypeImp(ExecState *exec)
{
- putDirect(lengthPropertyName, jsZero(), DontDelete|ReadOnly|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(0), DontDelete|ReadOnly|DontEnum);
putDirect(toStringPropertyName, new FunctionProtoFuncImp(exec, this, FunctionProtoFuncImp::ToString, 0), DontEnum);
static const Identifier applyPropertyName("apply");
putDirect(applyPropertyName, new FunctionProtoFuncImp(exec, this, FunctionProtoFuncImp::Apply, 2), DontEnum);
@@ -60,7 +60,7 @@
// ECMA 15.3.4
ValueImp *FunctionPrototypeImp::callAsFunction(ExecState */*exec*/, ObjectImp */*thisObj*/, const List &/*args*/)
{
- return Undefined();
+ return jsUndefined();
}
// ------------------------------ FunctionProtoFuncImp -------------------------
@@ -94,14 +94,14 @@
if (thisObj->inherits(&DeclaredFunctionImp::info)) {
DeclaredFunctionImp *fi = static_cast<DeclaredFunctionImp*>
(thisObj);
- return String("function " + fi->name().ustring() + "(" +
+ return jsString("function " + fi->name().ustring() + "(" +
fi->parameterString() + ") " + fi->body->toString());
} else if (thisObj->inherits(&FunctionImp::info) &&
!static_cast<FunctionImp*>(thisObj)->name().isNull()) {
- result = String("function " + static_cast<FunctionImp*>(thisObj)->name().ustring() + "()");
+ result = jsString("function " + static_cast<FunctionImp*>(thisObj)->name().ustring() + "()");
}
else {
- result = String("(Internal Function)");
+ result = jsString("(Internal Function)");
}
}
break;
@@ -165,7 +165,7 @@
putDirect(prototypePropertyName, funcProto, DontEnum|DontDelete|ReadOnly);
// no. of arguments for constructor
- putDirect(lengthPropertyName, jsOne(), ReadOnly|DontDelete|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(1), ReadOnly|DontDelete|DontEnum);
}
FunctionObjectImp::~FunctionObjectImp()
1.81 +2 -2 JavaScriptCore/kjs/internal.cpp
Index: internal.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/internal.cpp,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -r1.80 -r1.81
--- internal.cpp 1 Dec 2005 10:31:59 -0000 1.80
+++ internal.cpp 11 Dec 2005 00:37:51 -0000 1.81
@@ -529,8 +529,8 @@
// built-in values
global->put(&globExec, "NaN", jsNaN(), DontEnum|DontDelete);
- global->put(&globExec, "Infinity", Number(Inf), DontEnum|DontDelete);
- global->put(&globExec, "undefined", Undefined(), DontEnum|DontDelete);
+ global->put(&globExec, "Infinity", jsNumber(Inf), DontEnum|DontDelete);
+ global->put(&globExec, "undefined", jsUndefined(), DontEnum|DontDelete);
// built-in functions
global->put(&globExec, "eval", new GlobalFuncImp(&globExec, funcProto, GlobalFuncImp::Eval, 1), DontEnum);
1.30 +1 -1 JavaScriptCore/kjs/interpreter.h
Index: interpreter.h
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/interpreter.h,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- interpreter.h 23 Nov 2005 05:41:19 -0000 1.29
+++ interpreter.h 11 Dec 2005 00:37:51 -0000 1.30
@@ -200,7 +200,7 @@
*
* @param code The code to evaluate
* @param thisV The value to pass in as the "this" value for the script
- * execution. This should either be Null() or an Object.
+ * execution. This should either be jsNull() or an Object.
* @return A completion object representing the result of the execution.
*/
Completion evaluate(const UString &sourceURL, int startingLineNumber, const UString &code, ValueImp *thisV = NULL);
1.19 +1 -1 JavaScriptCore/kjs/lookup.h
Index: lookup.h
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/lookup.h,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- lookup.h 8 Aug 2005 04:07:28 -0000 1.18
+++ lookup.h 11 Dec 2005 00:37:51 -0000 1.19
@@ -329,7 +329,7 @@
public: \
ClassFunc(ExecState *exec, int i, int len) : id(i) \
{ \
- put(exec, lengthPropertyName, Number(len), DontDelete|ReadOnly|DontEnum); \
+ put(exec, lengthPropertyName, jsNumber(len), DontDelete|ReadOnly|DontEnum); \
} \
/* Macro user needs to implement the callAsFunction function. */ \
virtual ValueImp *callAsFunction(ExecState *exec, ObjectImp *thisObj, const List &args); \
1.21 +2 -2 JavaScriptCore/kjs/math_object.cpp
Index: math_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/math_object.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- math_object.cpp 6 Oct 2005 01:13:18 -0000 1.20
+++ math_object.cpp 11 Dec 2005 00:37:51 -0000 1.21
@@ -145,7 +145,7 @@
assert(0);
}
- return Number(d);
+ return jsNumber(d);
}
// ------------------------------ MathObjectImp --------------------------------
@@ -282,5 +282,5 @@
assert(0);
}
- return Number(result);
+ return jsNumber(result);
}
1.89 +29 -29 JavaScriptCore/kjs/nodes.cpp
Index: nodes.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/nodes.cpp,v
retrieving revision 1.88
retrieving revision 1.89
diff -u -r1.88 -r1.89
--- nodes.cpp 16 Oct 2005 00:46:21 -0000 1.88
+++ nodes.cpp 11 Dec 2005 00:37:51 -0000 1.89
@@ -70,10 +70,10 @@
#define KJS_CHECKEXCEPTIONVALUE \
if (exec->hadException()) { \
setExceptionDetailsIfNeeded(exec); \
- return Undefined(); \
+ return jsUndefined(); \
} \
if (Collector::outOfMemory()) \
- return Undefined(); // will be picked up by KJS_CHECKEXCEPTION
+ return jsUndefined(); // will be picked up by KJS_CHECKEXCEPTION
#define KJS_CHECKEXCEPTIONLIST \
if (exec->hadException()) { \
@@ -174,8 +174,8 @@
if (exceptionValue->isObject()) {
ObjectImp *exception = static_cast<ObjectImp *>(exceptionValue);
if (!exception->hasProperty(exec, "line") && !exception->hasProperty(exec, "sourceURL")) {
- exception->put(exec, "line", Number(line));
- exception->put(exec, "sourceURL", String(sourceURL));
+ exception->put(exec, "line", jsNumber(line));
+ exception->put(exec, "sourceURL", jsString(sourceURL));
}
}
}
@@ -216,7 +216,7 @@
ValueImp *NullNode::evaluate(ExecState *)
{
- return Null();
+ return jsNull();
}
// ------------------------------ BooleanNode ----------------------------------
@@ -380,9 +380,9 @@
ValueImp *s;
if (str.isNull()) {
- s = String(UString::from(numeric));
+ s = jsString(UString::from(numeric));
} else {
- s = String(str.ustring());
+ s = jsString(str.ustring());
}
return s;
@@ -571,13 +571,13 @@
if (baseObj->getPropertySlot(exec, i, slot))
funcVal = slot.getValue(exec, i);
else
- funcVal = Undefined();
+ funcVal = jsUndefined();
} else {
Identifier ident(subscriptVal->toString(exec));
if (baseObj->getPropertySlot(exec, ident, slot))
funcVal = baseObj->get(exec, ident);
else
- funcVal = Undefined();
+ funcVal = jsUndefined();
}
KJS_CHECKEXCEPTIONVALUE
@@ -620,7 +620,7 @@
ObjectImp *baseObj = baseVal->toObject(exec);
PropertySlot slot;
- ValueImp *funcVal = baseObj->getPropertySlot(exec, ident, slot) ? slot.getValue(exec, ident) : Undefined();
+ ValueImp *funcVal = baseObj->getPropertySlot(exec, ident, slot) ? slot.getValue(exec, ident) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
if (!funcVal->isObject())
@@ -690,7 +690,7 @@
uint32_t propertyIndex;
if (subscript->getUInt32(propertyIndex)) {
PropertySlot slot;
- ValueImp *v = base->getPropertySlot(exec, propertyIndex, slot) ? slot.getValue(exec, propertyIndex) : Undefined();
+ ValueImp *v = base->getPropertySlot(exec, propertyIndex, slot) ? slot.getValue(exec, propertyIndex) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
double n = v->toNumber(exec);
@@ -703,7 +703,7 @@
Identifier propertyName(subscript->toString(exec));
PropertySlot slot;
- ValueImp *v = base->getPropertySlot(exec, propertyName, slot) ? slot.getValue(exec, propertyName) : Undefined();
+ ValueImp *v = base->getPropertySlot(exec, propertyName, slot) ? slot.getValue(exec, propertyName) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
double n = v->toNumber(exec);
@@ -723,7 +723,7 @@
ObjectImp *base = baseValue->toObject(exec);
PropertySlot slot;
- ValueImp *v = base->getPropertySlot(exec, m_ident, slot) ? slot.getValue(exec, m_ident) : Undefined();
+ ValueImp *v = base->getPropertySlot(exec, m_ident, slot) ? slot.getValue(exec, m_ident) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
double n = v->toNumber(exec);
@@ -806,7 +806,7 @@
expr->evaluate(exec);
KJS_CHECKEXCEPTIONVALUE
- return Undefined();
+ return jsUndefined();
}
// ECMA 11.4.3
@@ -917,7 +917,7 @@
uint32_t propertyIndex;
if (subscript->getUInt32(propertyIndex)) {
PropertySlot slot;
- ValueImp *v = base->getPropertySlot(exec, propertyIndex, slot) ? slot.getValue(exec, propertyIndex) : Undefined();
+ ValueImp *v = base->getPropertySlot(exec, propertyIndex, slot) ? slot.getValue(exec, propertyIndex) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
double n = v->toNumber(exec);
@@ -931,7 +931,7 @@
Identifier propertyName(subscript->toString(exec));
PropertySlot slot;
- ValueImp *v = base->getPropertySlot(exec, propertyName, slot) ? slot.getValue(exec, propertyName) : Undefined();
+ ValueImp *v = base->getPropertySlot(exec, propertyName, slot) ? slot.getValue(exec, propertyName) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
double n = v->toNumber(exec);
@@ -952,7 +952,7 @@
ObjectImp *base = baseValue->toObject(exec);
PropertySlot slot;
- ValueImp *v = base->getPropertySlot(exec, m_ident, slot) ? slot.getValue(exec, m_ident) : Undefined();
+ ValueImp *v = base->getPropertySlot(exec, m_ident, slot) ? slot.getValue(exec, m_ident) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
double n = v->toNumber(exec);
@@ -1056,7 +1056,7 @@
return jsNumber(v1->toUInt32(exec) >> i2);
default:
assert(!"ShiftNode: unhandled switch case");
- return Undefined();
+ return jsUndefined();
}
}
@@ -1255,7 +1255,7 @@
break;
default:
assert(0);
- v = Undefined();
+ v = jsUndefined();
}
return v;
@@ -1317,7 +1317,7 @@
v = m_right->evaluate(exec);
} else {
PropertySlot slot;
- ValueImp *v1 = base->getPropertySlot(exec, m_ident, slot) ? slot.getValue(exec, m_ident) : Undefined();
+ ValueImp *v1 = base->getPropertySlot(exec, m_ident, slot) ? slot.getValue(exec, m_ident) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
ValueImp *v2 = m_right->evaluate(exec);
v = valueForReadModifyAssignment(exec, v1, v2, m_oper);
@@ -1347,7 +1347,7 @@
v = m_right->evaluate(exec);
} else {
PropertySlot slot;
- ValueImp *v1 = base->getPropertySlot(exec, propertyIndex, slot) ? slot.getValue(exec, propertyIndex) : Undefined();
+ ValueImp *v1 = base->getPropertySlot(exec, propertyIndex, slot) ? slot.getValue(exec, propertyIndex) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
ValueImp *v2 = m_right->evaluate(exec);
v = valueForReadModifyAssignment(exec, v1, v2, m_oper);
@@ -1366,7 +1366,7 @@
v = m_right->evaluate(exec);
} else {
PropertySlot slot;
- ValueImp *v1 = base->getPropertySlot(exec, propertyName, slot) ? slot.getValue(exec, propertyName) : Undefined();
+ ValueImp *v1 = base->getPropertySlot(exec, propertyName, slot) ? slot.getValue(exec, propertyName) : jsUndefined();
KJS_CHECKEXCEPTIONVALUE
ValueImp *v2 = m_right->evaluate(exec);
v = valueForReadModifyAssignment(exec, v1, v2, m_oper);
@@ -1466,7 +1466,7 @@
// built-in properties of the global object with var declarations.
if (variable->getDirect(ident))
return 0;
- val = Undefined();
+ val = jsUndefined();
}
#ifdef KJS_VERBOSE
@@ -1496,7 +1496,7 @@
flags |= DontDelete;
if (varType == VarDeclNode::Constant)
flags |= ReadOnly;
- variable->put(exec, ident, Undefined(), flags);
+ variable->put(exec, ident, jsUndefined(), flags);
}
}
@@ -1509,7 +1509,7 @@
n->var->evaluate(exec);
KJS_CHECKEXCEPTIONVALUE
}
- return Undefined();
+ return jsUndefined();
}
void VarDeclListNode::processVarDecls(ExecState *exec)
@@ -1918,7 +1918,7 @@
}
if (!value)
- return Completion(ReturnValue, Undefined());
+ return Completion(ReturnValue, jsUndefined());
ValueImp *v = value->evaluate(exec);
KJS_CHECKEXCEPTION
@@ -1966,7 +1966,7 @@
if (list)
return list->execute(exec);
else
- return Completion(Normal, Undefined());
+ return Completion(Normal, jsUndefined());
}
void CaseClauseNode::processVarDecls(ExecState *exec)
@@ -2191,7 +2191,7 @@
// ECMA 13
ValueImp *ParameterNode::evaluate(ExecState *)
{
- return Undefined();
+ return jsUndefined();
}
// ------------------------------ FunctionBodyNode -----------------------------
@@ -2226,7 +2226,7 @@
for(ParameterNode *p = param.get(); p != 0L; p = p->nextParam(), plen++)
func->addParameter(p->ident());
- func->put(exec, lengthPropertyName, Number(plen), ReadOnly|DontDelete|DontEnum);
+ func->put(exec, lengthPropertyName, jsNumber(plen), ReadOnly|DontDelete|DontEnum);
// ECMA 10.2.2
context->variableObject()->put(exec, ident, func, Internal | (context->codeType() == EvalCode ? 0 : DontDelete));
1.42 +1 -1 JavaScriptCore/kjs/nodes.h
Index: nodes.h
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/nodes.h,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- nodes.h 1 Dec 2005 10:31:59 -0000 1.41
+++ nodes.h 11 Dec 2005 00:37:51 -0000 1.42
@@ -134,7 +134,7 @@
protected:
LabelStack ls;
private:
- ValueImp *evaluate(ExecState */*exec*/) { return Undefined(); }
+ ValueImp *evaluate(ExecState */*exec*/) { return jsUndefined(); }
int l0, l1;
int sid;
bool breakPoint;
1.25 +27 -27 JavaScriptCore/kjs/number_object.cpp
Index: number_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/number_object.cpp,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- number_object.cpp 6 Oct 2005 01:13:18 -0000 1.24
+++ number_object.cpp 11 Dec 2005 00:37:52 -0000 1.25
@@ -53,7 +53,7 @@
FunctionPrototypeImp *funcProto)
: NumberInstanceImp(objProto)
{
- setInternalValue(jsZero());
+ setInternalValue(jsNumber(0));
// The constructor will be added later, after NumberObjectImp has been constructed
@@ -148,14 +148,14 @@
*--p = "0123456789abcdefghijklmnopqrstuvwxyz"[i % radix];
i /= radix;
} while (i);
- return String(p);
+ return jsString(p);
} else
- return String(v->toString(exec));
+ return jsString(v->toString(exec));
}
case ToLocaleString: /* TODO */
- return String(v->toString(exec));
+ return jsString(v->toString(exec));
case ValueOf:
- return Number(v->toNumber(exec));
+ return jsNumber(v->toNumber(exec));
case ToFixed:
{
ValueImp *fractionDigits = args[0];
@@ -166,7 +166,7 @@
double x = v->toNumber(exec);
if (isNaN(x))
- return String("NaN");
+ return jsString("NaN");
UString s = "";
if (x < 0) {
@@ -175,7 +175,7 @@
}
if (x >= pow(10.0, 21.0))
- return String(s+UString::from(x));
+ return jsString(s+UString::from(x));
double n = floor(x*pow(10.0, f));
if (fabs(n / pow(10.0, f) - x) > fabs((n + 1) / pow(10.0, f) - x))
@@ -193,15 +193,15 @@
assert(k == m.size());
}
if (k-f < m.size())
- return String(s+m.substr(0,k-f)+"."+m.substr(k-f));
+ return jsString(s+m.substr(0,k-f)+"."+m.substr(k-f));
else
- return String(s+m.substr(0,k-f));
+ return jsString(s+m.substr(0,k-f));
}
case ToExponential: {
double x = v->toNumber(exec);
if (isNaN(x) || isInf(x))
- return String(UString::from(x));
+ return jsString(UString::from(x));
ValueImp *fractionDigits = args[0];
double df = fractionDigits->toInteger(exec);
@@ -229,7 +229,7 @@
int sign;
if (isNaN(x))
- return String("NaN");
+ return jsString("NaN");
char *result = kjs_dtoa(x, 0, 0, &decimalPoint, &sign, NULL);
int length = strlen(result);
@@ -285,7 +285,7 @@
kjs_freedtoa(result);
- return String(UString(buf));
+ return jsString(buf);
}
case ToPrecision:
{
@@ -295,7 +295,7 @@
double dp = args[0]->toInteger(exec);
double x = v->toNumber(exec);
if (isNaN(dp) || isNaN(x) || isInf(x))
- return String(v->toString(exec));
+ return jsString(v->toString(exec));
UString s = "";
if (x < 0) {
@@ -325,9 +325,9 @@
if (m.size() > 1)
m = m.substr(0,1)+"."+m.substr(1);
if (e >= 0)
- return String(s+m+"e+"+UString::from(e));
+ return jsString(s+m+"e+"+UString::from(e));
else
- return String(s+m+"e-"+UString::from(-e));
+ return jsString(s+m+"e-"+UString::from(-e));
}
}
else {
@@ -336,16 +336,16 @@
}
if (e == p-1) {
- return String(s+m);
+ return jsString(s+m);
}
else if (e >= 0) {
if (e+1 < m.size())
- return String(s+m.substr(0,e+1)+"."+m.substr(e+1));
+ return jsString(s+m.substr(0,e+1)+"."+m.substr(e+1));
else
- return String(s+m.substr(0,e+1));
+ return jsString(s+m.substr(0,e+1));
}
else {
- return String(s+"0."+char_sequence('0',-(e+1))+m);
+ return jsString(s+"0."+char_sequence('0',-(e+1))+m);
}
}
@@ -375,7 +375,7 @@
putDirect(prototypePropertyName, numberProto,DontEnum|DontDelete|ReadOnly);
// no. of arguments for constructor
- putDirect(lengthPropertyName, jsOne(), ReadOnly|DontDelete|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(1), ReadOnly|DontDelete|DontEnum);
}
bool NumberObjectImp::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -390,15 +390,15 @@
case NaNValue:
return jsNaN();
case NegInfinity:
- return Number(-Inf);
+ return jsNumber(-Inf);
case PosInfinity:
- return Number(Inf);
+ return jsNumber(Inf);
case MaxValue:
- return Number(1.7976931348623157E+308);
+ return jsNumber(1.7976931348623157E+308);
case MinValue:
- return Number(5E-324);
+ return jsNumber(5E-324);
}
- return Null();
+ return jsNull();
}
bool NumberObjectImp::implementsConstruct() const
@@ -433,7 +433,7 @@
ValueImp *NumberObjectImp::callAsFunction(ExecState *exec, ObjectImp */*thisObj*/, const List &args)
{
if (args.isEmpty())
- return Number(0);
+ return jsNumber(0);
else
- return Number(args[0]->toNumber(exec));
+ return jsNumber(args[0]->toNumber(exec));
}
1.57 +5 -5 JavaScriptCore/kjs/object.cpp
Index: object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/object.cpp,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- object.cpp 4 Dec 2005 23:28:56 -0000 1.56
+++ object.cpp 11 Dec 2005 00:37:52 -0000 1.57
@@ -155,7 +155,7 @@
if (const_cast<ObjectImp *>(this)->getPropertySlot(exec, propertyName, slot))
return slot.getValue(exec, propertyName);
- return Undefined();
+ return jsUndefined();
}
ValueImp *ObjectImp::get(ExecState *exec, unsigned propertyName) const
@@ -164,7 +164,7 @@
if (const_cast<ObjectImp *>(this)->getPropertySlot(exec, propertyName, slot))
return slot.getValue(exec, propertyName);
- return Undefined();
+ return jsUndefined();
}
bool ObjectImp::getPropertySlot(ExecState *exec, unsigned propertyName, PropertySlot& slot)
@@ -511,12 +511,12 @@
ObjectImp *err = static_cast<ObjectImp *>(cons->construct(exec,args));
if (lineno != -1)
- err->put(exec, "line", Number(lineno));
+ err->put(exec, "line", jsNumber(lineno));
if (sourceId != -1)
- err->put(exec, "sourceId", Number(sourceId));
+ err->put(exec, "sourceId", jsNumber(sourceId));
if(sourceURL)
- err->put(exec,"sourceURL", String(*sourceURL));
+ err->put(exec,"sourceURL", jsString(*sourceURL));
return err;
1.17 +3 -3 JavaScriptCore/kjs/object_object.cpp
Index: object_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/object_object.cpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- object_object.cpp 4 Dec 2005 23:28:56 -0000 1.16
+++ object_object.cpp 11 Dec 2005 00:37:52 -0000 1.17
@@ -36,7 +36,7 @@
ObjectPrototypeImp::ObjectPrototypeImp(ExecState *exec,
FunctionPrototypeImp *funcProto)
- : ObjectImp() // [[Prototype]] is Null()
+ : ObjectImp() // [[Prototype]] is null
{
putDirect(toStringPropertyName, new ObjectProtoFuncImp(exec, funcProto, ObjectProtoFuncImp::ToString, 0), DontEnum);
putDirect(toLocaleStringPropertyName, new ObjectProtoFuncImp(exec, funcProto, ObjectProtoFuncImp::ToLocaleString, 0), DontEnum);
@@ -79,7 +79,7 @@
return jsString(thisObj->toString(exec));
case ToString:
default:
- return String("[object " + thisObj->className() + "]");
+ return jsString("[object " + thisObj->className() + "]");
}
}
@@ -94,7 +94,7 @@
putDirect(prototypePropertyName, objProto, DontEnum|DontDelete|ReadOnly);
// no. of arguments for constructor
- putDirect(lengthPropertyName, jsOne(), ReadOnly|DontDelete|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(1), ReadOnly|DontDelete|DontEnum);
}
1.4 +1 -1 JavaScriptCore/kjs/property_slot.cpp
Index: property_slot.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/property_slot.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- property_slot.cpp 3 Oct 2005 21:11:50 -0000 1.3
+++ property_slot.cpp 11 Dec 2005 00:37:52 -0000 1.4
@@ -28,7 +28,7 @@
ValueImp *PropertySlot::undefinedGetter(ExecState *, const Identifier& propertyName, const PropertySlot& slot)
{
- return Undefined();
+ return jsUndefined();
}
}
1.28 +27 -27 JavaScriptCore/kjs/regexp_object.cpp
Index: regexp_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/regexp_object.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- regexp_object.cpp 3 Nov 2005 18:11:58 -0000 1.27
+++ regexp_object.cpp 11 Dec 2005 00:37:52 -0000 1.28
@@ -49,7 +49,7 @@
FunctionPrototypeImp *funcProto)
: ObjectImp(objProto)
{
- setInternalValue(String(""));
+ setInternalValue(jsString(""));
// The constructor will be added later in RegExpObject's constructor (?)
@@ -79,7 +79,7 @@
if (!thisObj->inherits(&RegExpImp::info)) {
if (thisObj->inherits(&RegExpPrototypeImp::info)) {
switch (id) {
- case ToString: return String("//");
+ case ToString: return jsString("//");
}
}
@@ -105,8 +105,8 @@
if (!globalFlag)
lastIndex = 0;
if (lastIndex < 0 || lastIndex > input.size()) {
- thisObj->put(exec, "lastIndex", jsZero(), DontDelete | DontEnum);
- return Null();
+ thisObj->put(exec, "lastIndex", jsNumber(0), DontDelete | DontEnum);
+ return jsNull();
}
int foundIndex;
@@ -115,17 +115,17 @@
// Test
if (id == Test)
- return Boolean(didMatch);
+ return jsBoolean(didMatch);
// Exec
if (didMatch) {
if (globalFlag)
- thisObj->put(exec, "lastIndex", Number(foundIndex + match.size()), DontDelete | DontEnum);
+ thisObj->put(exec, "lastIndex", jsNumber(foundIndex + match.size()), DontDelete | DontEnum);
return regExpObj->arrayOfMatches(exec, match);
} else {
if (globalFlag)
- thisObj->put(exec, "lastIndex", jsZero(), DontDelete | DontEnum);
- return Null();
+ thisObj->put(exec, "lastIndex", jsNumber(0), DontDelete | DontEnum);
+ return jsNull();
}
}
break;
@@ -140,10 +140,10 @@
if (thisObj->get(exec, "multiline")->toBoolean(exec)) {
result += "m";
}
- return String(result);
+ return jsString(result);
}
- return Undefined();
+ return jsUndefined();
}
// ------------------------------ RegExpImp ------------------------------------
@@ -200,7 +200,7 @@
putDirect(prototypePropertyName, regProto, DontEnum|DontDelete|ReadOnly);
// no. of arguments for constructor
- putDirect(lengthPropertyName, jsTwo(), ReadOnly|DontDelete|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(2), ReadOnly|DontDelete|DontEnum);
}
RegExpObjectImp::~RegExpObjectImp()
@@ -240,7 +240,7 @@
{
List list;
// The returned array contains 'result' as first item, followed by the list of matches
- list.append(String(result));
+ list.append(jsString(result));
if ( lastOvector )
for ( unsigned i = 1 ; i < lastNumSubPatterns + 1 ; ++i )
{
@@ -249,12 +249,12 @@
list.append(jsUndefined());
else {
UString substring = lastInput.substr( start, lastOvector[2*i+1] - start );
- list.append(String(substring));
+ list.append(jsString(substring));
}
}
ObjectImp *arr = exec->lexicalInterpreter()->builtinArray()->construct(exec, list);
- arr->put(exec, "index", Number(lastOvector[0]));
- arr->put(exec, "input", String(lastInput));
+ arr->put(exec, "index", jsNumber(lastOvector[0]));
+ arr->put(exec, "input", jsString(lastInput));
return arr;
}
@@ -262,20 +262,20 @@
{
if (lastOvector && i < lastNumSubPatterns + 1) {
UString substring = lastInput.substr(lastOvector[2*i], lastOvector[2*i+1] - lastOvector[2*i] );
- return String(substring);
+ return jsString(substring);
}
- return String("");
+ return jsString("");
}
ValueImp *RegExpObjectImp::getLastMatch() const
{
if (lastOvector) {
UString substring = lastInput.substr(lastOvector[0], lastOvector[1] - lastOvector[0]);
- return String(substring);
+ return jsString(substring);
}
- return String("");
+ return jsString("");
}
ValueImp *RegExpObjectImp::getLastParen() const
@@ -284,20 +284,20 @@
if (i > 0) {
assert(lastOvector);
UString substring = lastInput.substr(lastOvector[2*i], lastOvector[2*i+1] - lastOvector[2*i]);
- return String(substring);
+ return jsString(substring);
}
- return String("");
+ return jsString("");
}
ValueImp *RegExpObjectImp::getLeftContext() const
{
if (lastOvector) {
UString substring = lastInput.substr(0, lastOvector[0]);
- return String(substring);
+ return jsString(substring);
}
- return String("");
+ return jsString("");
}
ValueImp *RegExpObjectImp::getRightContext() const
@@ -305,10 +305,10 @@
if (lastOvector) {
UString s = lastInput;
UString substring = s.substr(lastOvector[1], s.size() - lastOvector[1]);
- return String(substring);
+ return jsString(substring);
}
- return String("");
+ return jsString("");
}
bool RegExpObjectImp::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -353,7 +353,7 @@
assert(0);
}
- return String("");
+ return jsString("");
}
void RegExpObjectImp::put(ExecState *exec, const Identifier &propertyName, ValueImp *value, int attr)
@@ -406,7 +406,7 @@
dat->putDirect("multiline", jsBoolean(multiline), DontDelete | ReadOnly | DontEnum);
dat->putDirect("source", jsString(p), DontDelete | ReadOnly | DontEnum);
- dat->putDirect("lastIndex", jsZero(), DontDelete | DontEnum);
+ dat->putDirect("lastIndex", jsNumber(0), DontDelete | DontEnum);
int reflags = RegExp::None;
if (global)
1.51 +48 -48 JavaScriptCore/kjs/string_object.cpp
Index: string_object.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/string_object.cpp,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -r1.50 -r1.51
--- string_object.cpp 6 Nov 2005 05:48:45 -0000 1.50
+++ string_object.cpp 11 Dec 2005 00:37:52 -0000 1.51
@@ -43,13 +43,13 @@
StringInstanceImp::StringInstanceImp(ObjectImp *proto)
: ObjectImp(proto)
{
- setInternalValue(String(""));
+ setInternalValue(jsString(""));
}
StringInstanceImp::StringInstanceImp(ObjectImp *proto, const UString &string)
: ObjectImp(proto)
{
- setInternalValue(String(string));
+ setInternalValue(jsString(string));
}
ValueImp *StringInstanceImp::lengthGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot &slot)
@@ -145,7 +145,7 @@
: StringInstanceImp(objProto)
{
// The constructor will be added later, after StringObjectImp has been built
- putDirect(lengthPropertyName, jsZero(), DontDelete|ReadOnly|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(0), DontDelete|ReadOnly|DontEnum);
}
bool StringPrototypeImp::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot &slot)
@@ -338,7 +338,7 @@
delete [] sourceRanges;
delete [] replacements;
- return String(result);
+ return jsString(result);
}
// First arg is a string
@@ -347,7 +347,7 @@
int matchLen = patternString.size();
// Do the replacement
if (matchPos == -1)
- return String(source);
+ return jsString(source);
if (replacementFunction) {
List args;
@@ -360,7 +360,7 @@
args)->toString(exec);
}
- return String(source.substr(0, matchPos) + replacementString + source.substr(matchPos + matchLen));
+ return jsString(source.substr(0, matchPos) + replacementString + source.substr(matchPos + matchLen));
}
// ECMA 15.5.4.2 - 15.5.4.20
@@ -373,7 +373,7 @@
if (!thisObj || !thisObj->inherits(&StringInstanceImp::info))
return throwError(exec, TypeError);
- return String(thisObj->internalValue()->toString(exec));
+ return jsString(thisObj->internalValue()->toString(exec));
}
UString u, u2, u3;
@@ -400,14 +400,14 @@
u = s.substr(static_cast<int>(dpos), 1);
else
u = "";
- result = String(u);
+ result = jsString(u);
break;
case CharCodeAt:
// Other browsers treat an omitted parameter as 0 rather than NaN.
// That doesn't match the ECMA standard, but is needed for site compatibility.
dpos = a0->isUndefined() ? 0 : a0->toInteger(exec);
if (dpos >= 0 && dpos < len) // false for NaN
- result = Number(s[static_cast<int>(dpos)].unicode());
+ result = jsNumber(s[static_cast<int>(dpos)].unicode());
else
result = jsNaN();
break;
@@ -416,7 +416,7 @@
for ( ; it != args.end() ; ++it) {
s += it->toString(exec);
}
- result = String(s);
+ result = jsString(s);
break;
}
case IndexOf:
@@ -431,7 +431,7 @@
} else
dpos = 0;
}
- result = Number(s.find(u2, static_cast<int>(dpos)));
+ result = jsNumber(s.find(u2, static_cast<int>(dpos)));
break;
case LastIndexOf:
u2 = a0->toString(exec);
@@ -446,7 +446,7 @@
} else
dpos = 0;
}
- result = Number(s.rfind(u2, static_cast<int>(dpos)));
+ result = jsNumber(s.rfind(u2, static_cast<int>(dpos)));
break;
case Match:
case Search: {
@@ -467,13 +467,13 @@
RegExpObjectImp* regExpObj = static_cast<RegExpObjectImp*>(exec->lexicalInterpreter()->builtinRegExp());
UString mstr = regExpObj->performMatch(reg, u, 0, &pos);
if (id == Search) {
- result = Number(pos);
+ result = jsNumber(pos);
} else {
// Exec
if ((reg->flags() & RegExp::Global) == 0) {
// case without 'g' flag is handled like RegExp.prototype.exec
if (mstr.isNull()) {
- result = Null();
+ result = jsNull();
} else {
result = regExpObj->arrayOfMatches(exec,mstr);
}
@@ -485,18 +485,18 @@
if (mstr.isNull())
list.append(jsUndefined());
else
- list.append(String(mstr));
+ list.append(jsString(mstr));
lastIndex = pos;
pos += mstr.isEmpty() ? 1 : mstr.size();
mstr = regExpObj->performMatch(reg, u, pos, &pos);
}
if (imp)
- imp->put(exec, "lastIndex", Number(lastIndex), DontDelete|DontEnum);
+ imp->put(exec, "lastIndex", jsNumber(lastIndex), DontDelete|DontEnum);
if (list.isEmpty()) {
// if there are no matches at all, it's important to return
// Null instead of an empty array, because this matches
// other browsers and because Null is a false value.
- result = Null();
+ result = jsNull();
} else {
result = exec->lexicalInterpreter()->builtinArray()->construct(exec, list);
}
@@ -520,9 +520,9 @@
from = 0;
if (to > len)
to = len;
- result = String(s.substr(static_cast<int>(from), static_cast<int>(to - from)));
+ result = jsString(s.substr(static_cast<int>(from), static_cast<int>(to - from)));
} else {
- result = String("");
+ result = jsString("");
}
break;
}
@@ -538,7 +538,7 @@
RegExp reg(obj0->get(exec,"source")->toString(exec));
if (u.isEmpty() && !reg.match(u, 0).isNull()) {
// empty string matched by regexp -> empty array
- res->put(exec,lengthPropertyName, Number(0));
+ res->put(exec,lengthPropertyName, jsNumber(0));
break;
}
pos = 0;
@@ -552,7 +552,7 @@
break;
pos = mpos + (mstr.isEmpty() ? 1 : mstr.size());
if (mpos != p0 || !mstr.isEmpty()) {
- res->put(exec,i, String(u.substr(p0, mpos-p0)));
+ res->put(exec,i, jsString(u.substr(p0, mpos-p0)));
p0 = mpos + mstr.size();
i++;
}
@@ -562,15 +562,15 @@
if (u2.isEmpty()) {
if (u.isEmpty()) {
// empty separator matches empty string -> empty array
- put(exec,lengthPropertyName, Number(0));
+ put(exec,lengthPropertyName, jsNumber(0));
break;
} else {
while (static_cast<uint32_t>(i) != limit && i < u.size()-1)
- res->put(exec, i++, String(u.substr(p0++, 1)));
+ res->put(exec, i++, jsString(u.substr(p0++, 1)));
}
} else {
while (static_cast<uint32_t>(i) != limit && (pos = u.find(u2, p0)) >= 0) {
- res->put(exec, i, String(u.substr(p0, pos-p0)));
+ res->put(exec, i, jsString(u.substr(p0, pos-p0)));
p0 = pos + u2.size();
i++;
}
@@ -578,8 +578,8 @@
}
// add remaining string, if any
if (static_cast<uint32_t>(i) != limit)
- res->put(exec, i++, String(u.substr(p0)));
- res->put(exec,lengthPropertyName, Number(i));
+ res->put(exec, i++, jsString(u.substr(p0)));
+ res->put(exec,lengthPropertyName, jsNumber(i));
}
break;
case Substr: {
@@ -598,7 +598,7 @@
if (d2 > len - d)
d2 = len - d;
}
- result = String(s.substr(static_cast<int>(d), static_cast<int>(d2)));
+ result = jsString(s.substr(static_cast<int>(d), static_cast<int>(d2)));
break;
}
case Substring: {
@@ -623,7 +623,7 @@
end = start;
start = temp;
}
- result = String(s.substr((int)start, (int)end-(int)start));
+ result = jsString(s.substr((int)start, (int)end-(int)start));
}
break;
case ToLowerCase:
@@ -631,54 +631,54 @@
u = s;
for (i = 0; i < len; i++)
u[i] = u[i].toLower();
- result = String(u);
+ result = jsString(u);
break;
case ToUpperCase:
case ToLocaleUpperCase: // FIXME: To get this 100% right we need to detect Turkish and change i to uppercase I with a dot.
u = s;
for (i = 0; i < len; i++)
u[i] = u[i].toUpper();
- result = String(u);
+ result = jsString(u);
break;
#ifndef KJS_PURE_ECMA
case Big:
- result = String("<big>" + s + "</big>");
+ result = jsString("<big>" + s + "</big>");
break;
case Small:
- result = String("<small>" + s + "</small>");
+ result = jsString("<small>" + s + "</small>");
break;
case Blink:
- result = String("<blink>" + s + "</blink>");
+ result = jsString("<blink>" + s + "</blink>");
break;
case Bold:
- result = String("<b>" + s + "</b>");
+ result = jsString("<b>" + s + "</b>");
break;
case Fixed:
- result = String("<tt>" + s + "</tt>");
+ result = jsString("<tt>" + s + "</tt>");
break;
case Italics:
- result = String("<i>" + s + "</i>");
+ result = jsString("<i>" + s + "</i>");
break;
case Strike:
- result = String("<strike>" + s + "</strike>");
+ result = jsString("<strike>" + s + "</strike>");
break;
case Sub:
- result = String("<sub>" + s + "</sub>");
+ result = jsString("<sub>" + s + "</sub>");
break;
case Sup:
- result = String("<sup>" + s + "</sup>");
+ result = jsString("<sup>" + s + "</sup>");
break;
case Fontcolor:
- result = String("<font color=\"" + a0->toString(exec) + "\">" + s + "</font>");
+ result = jsString("<font color=\"" + a0->toString(exec) + "\">" + s + "</font>");
break;
case Fontsize:
- result = String("<font size=\"" + a0->toString(exec) + "\">" + s + "</font>");
+ result = jsString("<font size=\"" + a0->toString(exec) + "\">" + s + "</font>");
break;
case Anchor:
- result = String("<a name=\"" + a0->toString(exec) + "\">" + s + "</a>");
+ result = jsString("<a name=\"" + a0->toString(exec) + "\">" + s + "</a>");
break;
case Link:
- result = String("<a href=\"" + a0->toString(exec) + "\">" + s + "</a>");
+ result = jsString("<a href=\"" + a0->toString(exec) + "\">" + s + "</a>");
break;
#endif
}
@@ -699,7 +699,7 @@
putDirect(fromCharCodePropertyName, new StringObjectFuncImp(exec, funcProto), DontEnum);
// no. of arguments for constructor
- putDirect(lengthPropertyName, jsOne(), ReadOnly|DontDelete|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(1), ReadOnly|DontDelete|DontEnum);
}
@@ -726,10 +726,10 @@
ValueImp *StringObjectImp::callAsFunction(ExecState *exec, ObjectImp */*thisObj*/, const List &args)
{
if (args.isEmpty())
- return String("");
+ return jsString("");
else {
ValueImp *v = args[0];
- return String(v->toString(exec));
+ return jsString(v->toString(exec));
}
}
@@ -739,7 +739,7 @@
StringObjectFuncImp::StringObjectFuncImp(ExecState *exec, FunctionPrototypeImp *funcProto)
: InternalFunctionImp(funcProto)
{
- putDirect(lengthPropertyName, jsOne(), DontDelete|ReadOnly|DontEnum);
+ putDirect(lengthPropertyName, jsNumber(1), DontDelete|ReadOnly|DontEnum);
}
bool StringObjectFuncImp::implementsCall() const
@@ -763,5 +763,5 @@
} else
s = "";
- return String(s);
+ return jsString(s);
}
1.19 +4 -4 JavaScriptCore/kjs/testkjs.cpp
Index: testkjs.cpp
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/testkjs.cpp,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- testkjs.cpp 27 Nov 2005 07:54:45 -0000 1.18
+++ testkjs.cpp 11 Dec 2005 00:37:52 -0000 1.19
@@ -58,10 +58,10 @@
case Print:
case Debug:
fprintf(stderr,"--> %s\n",args[0]->toString(exec).ascii());
- return Undefined();
+ return jsUndefined();
case Quit:
exit(0);
- return Undefined();
+ return jsUndefined();
case GC:
{
JSLock lock;
@@ -72,7 +72,7 @@
break;
}
- return Undefined();
+ return jsUndefined();
}
class VersionFunctionImp : public ObjectImp {
@@ -86,7 +86,7 @@
{
// We need this function for compatibility with the Mozilla JS tests but for now
// we don't actually do any version-specific handling
- return Undefined();
+ return jsUndefined();
}
class GlobalImp : public ObjectImp {
1.38 +1 -28 JavaScriptCore/kjs/value.h
Index: value.h
===================================================================
RCS file: /cvs/root/JavaScriptCore/kjs/value.h,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- value.h 16 Nov 2005 01:45:12 -0000 1.37
+++ value.h 11 Dec 2005 00:37:52 -0000 1.38
@@ -175,13 +175,10 @@
AllocatedValueImp *jsUndefined();
AllocatedValueImp *jsNull();
-AllocatedValueImp *jsBoolean(bool = false);
+AllocatedValueImp *jsBoolean(bool);
ValueImp *jsNumber(double);
ValueImp *jsNaN();
-ValueImp *jsZero();
-ValueImp *jsOne();
-ValueImp *jsTwo();
AllocatedValueImp *jsString(const UString &); // returns empty string if passed null string
AllocatedValueImp *jsString(const char * = ""); // returns empty string if passed 0
@@ -418,30 +415,6 @@
return downcast()->toString(exec);
}
-inline ValueImp *jsZero()
-{
- return SimpleNumber::make(0.0);
-}
-
-inline ValueImp *jsOne()
-{
- return SimpleNumber::make(1.0);
-}
-
-inline ValueImp *jsTwo()
-{
- return SimpleNumber::make(2.0);
-}
-
-// compatibility names so we don't have to change so much code
-
-inline AllocatedValueImp *Undefined() { return jsUndefined(); }
-inline AllocatedValueImp *Null() { return jsNull(); }
-inline AllocatedValueImp *Boolean(bool b) { return jsBoolean(b); }
-inline ValueImp *Number(double n) { return jsNumber(n); }
-inline AllocatedValueImp *String(const UString& s) { return jsString(s); }
-inline AllocatedValueImp *String(const char *s) { return jsString(s); }
-
} // namespace
#endif // KJS_VALUE_H
1.505 +235 -0 WebCore/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /cvs/root/WebCore/ChangeLog,v
retrieving revision 1.504
retrieving revision 1.505
diff -u -r1.504 -r1.505
--- ChangeLog 11 Dec 2005 00:07:20 -0000 1.504
+++ ChangeLog 11 Dec 2005 00:37:56 -0000 1.505
@@ -1,3 +1,238 @@
+2005-12-10 Darin Adler <darin at apple.com>
+
+ Reviewed by Maciej.
+
+ - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
+
+ Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
+
+ * khtml/ecma/domparser.cpp:
+ (KJS::DOMParserProtoFunc::callAsFunction):
+ * khtml/ecma/kjs_binding.cpp:
+ (KJS::jsStringOrNull):
+ (KJS::setDOMException):
+ * khtml/ecma/kjs_binding.h:
+ (KJS::DOMFunction::toPrimitive):
+ * khtml/ecma/kjs_css.cpp:
+ (KJS::DOMCSSStyleDeclaration::indexGetter):
+ (KJS::DOMCSSStyleDeclaration::cssPropertyGetter):
+ (KJS::DOMCSSStyleDeclaration::getValueProperty):
+ (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction):
+ (KJS::DOMStyleSheet::getValueProperty):
+ (KJS::getDOMStyleSheet):
+ (KJS::DOMStyleSheetList::getValueProperty):
+ (KJS::getDOMStyleSheetList):
+ (KJS::DOMStyleSheetListFunc::callAsFunction):
+ (KJS::DOMMediaList::getValueProperty):
+ (KJS::DOMMediaList::indexGetter):
+ (KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
+ (KJS::DOMCSSStyleSheet::getValueProperty):
+ (KJS::DOMCSSStyleSheetProtoFunc::callAsFunction):
+ (KJS::DOMCSSRuleList::getValueProperty):
+ (KJS::DOMCSSRuleListFunc::callAsFunction):
+ (KJS::DOMCSSRule::getValueProperty):
+ (KJS::DOMCSSRuleFunc::callAsFunction):
+ (KJS::CSSRuleConstructor::getValueProperty):
+ (KJS::DOMCSSValue::getValueProperty):
+ (KJS::getDOMCSSValue):
+ (KJS::CSSValueConstructor::getValueProperty):
+ (KJS::DOMCSSPrimitiveValue::getValueProperty):
+ (KJS::DOMCSSPrimitiveValueProtoFunc::callAsFunction):
+ (KJS::CSSPrimitiveValueConstructor::getValueProperty):
+ (KJS::DOMCSSValueList::getValueProperty):
+ (KJS::DOMCSSValueListFunc::callAsFunction):
+ (KJS::DOMCounter::getValueProperty):
+ * khtml/ecma/kjs_dom.cpp:
+ (KJS::DOMNode::getValueProperty):
+ (KJS::DOMNode::toPrimitive):
+ (KJS::DOMNode::getListener):
+ (KJS::DOMNodeProtoFunc::callAsFunction):
+ (KJS::DOMNodeList::toPrimitive):
+ (KJS::DOMNodeList::getValueProperty):
+ (KJS::DOMNodeList::callAsFunction):
+ (KJS::DOMAttr::getValueProperty):
+ (KJS::DOMDocument::getValueProperty):
+ (KJS::DOMDocumentProtoFunc::callAsFunction):
+ (KJS::DOMElement::getValueProperty):
+ (KJS::DOMElement::attributeGetter):
+ (KJS::DOMElementProtoFunc::callAsFunction):
+ (KJS::DOMDOMImplementationProtoFunc::callAsFunction):
+ (KJS::DOMDocumentType::getValueProperty):
+ (KJS::DOMNamedNodeMap::lengthGetter):
+ (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
+ (KJS::DOMProcessingInstruction::getValueProperty):
+ (KJS::DOMNotation::getValueProperty):
+ (KJS::DOMEntity::getValueProperty):
+ (KJS::getDOMNode):
+ (KJS::NodeConstructor::getValueProperty):
+ (KJS::DOMExceptionConstructor::getValueProperty):
+ (KJS::DOMNamedNodesCollection::lengthGetter):
+ (KJS::DOMCharacterData::getValueProperty):
+ (KJS::DOMCharacterDataProtoFunc::callAsFunction):
+ (KJS::DOMTextProtoFunc::callAsFunction):
+ * khtml/ecma/kjs_events.cpp:
+ (KJS::JSLazyEventListener::parseCode):
+ (KJS::EventConstructor::getValueProperty):
+ (KJS::DOMEvent::getValueProperty):
+ (KJS::DOMEventProtoFunc::callAsFunction):
+ (KJS::getDOMEvent):
+ (KJS::EventExceptionConstructor::getValueProperty):
+ (KJS::DOMUIEvent::getValueProperty):
+ (KJS::DOMUIEventProtoFunc::callAsFunction):
+ (KJS::DOMMouseEvent::getValueProperty):
+ (KJS::DOMMouseEventProtoFunc::callAsFunction):
+ (KJS::DOMKeyboardEvent::getValueProperty):
+ (KJS::DOMKeyboardEventProtoFunc::callAsFunction):
+ (KJS::MutationEventConstructor::getValueProperty):
+ (KJS::DOMMutationEvent::getValueProperty):
+ (KJS::DOMMutationEventProtoFunc::callAsFunction):
+ (KJS::DOMWheelEvent::getValueProperty):
+ (KJS::DOMWheelEventProtoFunc::callAsFunction):
+ (KJS::stringOrUndefined):
+ (KJS::Clipboard::getValueProperty):
+ (KJS::ClipboardProtoFunc::callAsFunction):
+ * khtml/ecma/kjs_html.cpp:
+ (KJS::KJS::HTMLDocFunction::callAsFunction):
+ (KJS::HTMLDocument::getValueProperty):
+ (KJS::HTMLElement::framesetNameGetter):
+ (KJS::HTMLElement::frameWindowPropertyGetter):
+ (KJS::HTMLElement::runtimeObjectPropertyGetter):
+ (KJS::KJS::HTMLElement::callAsFunction):
+ (KJS::HTMLElement::htmlGetter):
+ (KJS::HTMLElement::headGetter):
+ (KJS::HTMLElement::linkGetter):
+ (KJS::HTMLElement::titleGetter):
+ (KJS::HTMLElement::metaGetter):
+ (KJS::HTMLElement::baseGetter):
+ (KJS::HTMLElement::isIndexGetter):
+ (KJS::HTMLElement::styleGetter):
+ (KJS::HTMLElement::bodyGetter):
+ (KJS::HTMLElement::formGetter):
+ (KJS::HTMLElement::selectGetter):
+ (KJS::HTMLElement::optGroupGetter):
+ (KJS::HTMLElement::optionGetter):
+ (KJS::getInputSelectionStart):
+ (KJS::getInputSelectionEnd):
+ (KJS::HTMLElement::inputGetter):
+ (KJS::HTMLElement::textAreaGetter):
+ (KJS::HTMLElement::buttonGetter):
+ (KJS::HTMLElement::labelGetter):
+ (KJS::HTMLElement::fieldSetGetter):
+ (KJS::HTMLElement::legendGetter):
+ (KJS::HTMLElement::uListGetter):
+ (KJS::HTMLElement::oListGetter):
+ (KJS::HTMLElement::dListGetter):
+ (KJS::HTMLElement::dirGetter):
+ (KJS::HTMLElement::menuGetter):
+ (KJS::HTMLElement::liGetter):
+ (KJS::HTMLElement::divGetter):
+ (KJS::HTMLElement::paragraphGetter):
+ (KJS::HTMLElement::headingGetter):
+ (KJS::HTMLElement::blockQuoteGetter):
+ (KJS::HTMLElement::quoteGetter):
+ (KJS::HTMLElement::preGetter):
+ (KJS::HTMLElement::brGetter):
+ (KJS::HTMLElement::baseFontGetter):
+ (KJS::HTMLElement::fontGetter):
+ (KJS::HTMLElement::hrGetter):
+ (KJS::HTMLElement::modGetter):
+ (KJS::HTMLElement::anchorGetter):
+ (KJS::HTMLElement::imageGetter):
+ (KJS::HTMLElement::objectGetter):
+ (KJS::HTMLElement::paramGetter):
+ (KJS::HTMLElement::appletGetter):
+ (KJS::HTMLElement::mapGetter):
+ (KJS::HTMLElement::areaGetter):
+ (KJS::HTMLElement::scriptGetter):
+ (KJS::HTMLElement::tableGetter):
+ (KJS::HTMLElement::tableCaptionGetter):
+ (KJS::HTMLElement::tableColGetter):
+ (KJS::HTMLElement::tableSectionGetter):
+ (KJS::HTMLElement::tableRowGetter):
+ (KJS::HTMLElement::tableCellGetter):
+ (KJS::HTMLElement::frameSetGetter):
+ (KJS::HTMLElement::frameGetter):
+ (KJS::HTMLElement::iFrameGetter):
+ (KJS::HTMLElement::marqueeGetter):
+ (KJS::HTMLElement::getValueProperty):
+ (KJS::HTMLElementFunction::HTMLElementFunction):
+ (KJS::KJS::HTMLElementFunction::callAsFunction):
+ (KJS::HTMLCollection::lengthGetter):
+ (KJS::KJS::HTMLCollection::callAsFunction):
+ (KJS::KJS::HTMLCollection::getNamedItems):
+ (KJS::KJS::HTMLCollectionProtoFunc::callAsFunction):
+ (KJS::HTMLSelectCollection::selectedIndexGetter):
+ (KJS::HTMLSelectCollection::getOwnPropertySlot):
+ (KJS::OptionConstructorImp::OptionConstructorImp):
+ (KJS::Image::getValueProperty):
+ (KJS::KJS::Context2DFunction::callAsFunction):
+ (KJS::Context2D::getValueProperty):
+ (KJS::Context2D::Context2D):
+ (KJS::GradientFunction::callAsFunction):
+ (KJS::Gradient::getValueProperty):
+ (KJS::ImagePattern::getValueProperty):
+ (KJS::getSelectHTMLCollection):
+ * khtml/ecma/kjs_navigator.cpp:
+ (KJS::Navigator::getValueProperty):
+ (KJS::Plugins::getValueProperty):
+ (KJS::Plugins::nameGetter):
+ (KJS::MimeTypes::getValueProperty):
+ (KJS::MimeTypes::nameGetter):
+ (KJS::Plugin::getValueProperty):
+ (KJS::Plugin::nameGetter):
+ (KJS::MimeType::getValueProperty):
+ (KJS::PluginsFunc::callAsFunction):
+ (KJS::NavigatorFunc::callAsFunction):
+ * khtml/ecma/kjs_proxy.cpp:
+ (TestFunctionImp::callAsFunction):
+ * khtml/ecma/kjs_range.cpp:
+ (KJS::DOMRange::getValueProperty):
+ (KJS::DOMRangeProtoFunc::callAsFunction):
+ (KJS::RangeConstructor::getValueProperty):
+ * khtml/ecma/kjs_traversal.cpp:
+ (KJS::DOMNodeIterator::getValueProperty):
+ (KJS::DOMNodeIteratorProtoFunc::callAsFunction):
+ (KJS::NodeFilterConstructor::getValueProperty):
+ (KJS::DOMNodeFilterProtoFunc::callAsFunction):
+ (KJS::DOMTreeWalker::getValueProperty):
+ (KJS::DOMTreeWalkerProtoFunc::callAsFunction):
+ * khtml/ecma/kjs_views.cpp:
+ (KJS::DOMAbstractViewProtoFunc::callAsFunction):
+ * khtml/ecma/kjs_window.cpp:
+ (KJS::Screen::getValueProperty):
+ (KJS::Window::retrieve):
+ (KJS::showModalDialog):
+ (KJS::Window::getValueProperty):
+ (KJS::Window::getListener):
+ (KJS::WindowFunc::callAsFunction):
+ (KJS::FrameArray::getValueProperty):
+ (KJS::FrameArray::indexGetter):
+ (KJS::FrameArray::nameGetter):
+ (KJS::Location::getValueProperty):
+ (KJS::Location::toPrimitive):
+ (KJS::LocationFunc::callAsFunction):
+ (KJS::Selection::getValueProperty):
+ (KJS::Selection::toPrimitive):
+ (KJS::SelectionFunc::callAsFunction):
+ (KJS::BarInfo::getValueProperty):
+ (KJS::History::getValueProperty):
+ (KJS::HistoryFunc::callAsFunction):
+ * khtml/ecma/xmlhttprequest.cpp:
+ (KJS::XMLHttpRequest::getValueProperty):
+ (KJS::XMLHttpRequest::getAllResponseHeaders):
+ (KJS::XMLHttpRequest::getResponseHeader):
+ (KJS::XMLHttpRequest::getStatus):
+ (KJS::XMLHttpRequest::getStatusText):
+ (KJS::XMLHttpRequestProtoFunc::callAsFunction):
+ * khtml/ecma/xmlserializer.cpp:
+ (KJS::XMLSerializerProtoFunc::callAsFunction):
+ * ksvg2/ecma/Ecma.cpp:
+ (KSVG::getSVGPathSeg):
+ * ksvg2/ecma/GlobalObject.cpp:
+ (GlobalObject::get):
+ * kwq/WebCoreScriptDebugger.mm:
+ (-[WebCoreScriptCallFrame evaluateWebScript:]):
+
2005-12-10 Maciej Stachowiak <mjs at apple.com>
Reviewed by Darin and Tim Hatcher.
1.9 +1 -1 WebCore/khtml/ecma/domparser.cpp
Index: domparser.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/domparser.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- domparser.cpp 21 Nov 2005 04:01:53 -0000 1.8
+++ domparser.cpp 11 Dec 2005 00:38:00 -0000 1.9
@@ -98,7 +98,7 @@
}
}
- return Undefined();
+ return jsUndefined();
}
} // end namespace
1.49 +5 -6 WebCore/khtml/ecma/kjs_binding.cpp
Index: kjs_binding.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_binding.cpp,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- kjs_binding.cpp 6 Dec 2005 09:21:15 -0000 1.48
+++ kjs_binding.cpp 11 Dec 2005 00:38:00 -0000 1.49
@@ -309,12 +309,11 @@
return QString((QChar*) data(), size());
}
-ValueImp *getStringOrNull(DOMString s)
+ValueImp *jsStringOrNull(const DOMString &s)
{
- if (s.isNull())
- return Null();
- else
- return String(s);
+ if (s.isNull())
+ return jsNull();
+ return jsString(s);
}
DOMString valueToStringWithNullCheck(ExecState *exec, ValueImp *val)
@@ -366,7 +365,7 @@
sprintf(buffer, "%s exception %d", type, code);
ObjectImp *errorObject = throwError(exec, GeneralError, buffer);
- errorObject->put(exec, "code", Number(code));
+ errorObject->put(exec, "code", jsNumber(code));
}
}
1.36 +3 -3 WebCore/khtml/ecma/kjs_binding.h
Index: kjs_binding.h
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_binding.h,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- kjs_binding.h 21 Nov 2005 01:19:54 -0000 1.35
+++ kjs_binding.h 11 Dec 2005 00:38:00 -0000 1.36
@@ -57,7 +57,7 @@
public:
virtual bool implementsCall() const { return true; }
virtual bool toBoolean(ExecState *) const { return true; }
- virtual ValueImp *toPrimitive(ExecState *exec, Type) const { return String(toString(exec)); }
+ virtual ValueImp *toPrimitive(ExecState *exec, Type) const { return jsString(toString(exec)); }
virtual UString toString(ExecState *) const { return UString("[function]"); }
};
@@ -148,9 +148,9 @@
};
/**
- * Get a String object, or Null() if s is null
+ * Get a String object, or jsNull() if s is null
*/
- ValueImp *getStringOrNull(DOM::DOMString s);
+ ValueImp *jsStringOrNull(const DOM::DOMString&);
/**
* Get a DOMString object or a null DOMString if the value is null
1.42 +75 -75 WebCore/khtml/ecma/kjs_css.cpp
Index: kjs_css.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_css.cpp,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- kjs_css.cpp 7 Dec 2005 01:12:37 -0000 1.41
+++ kjs_css.cpp 11 Dec 2005 00:38:00 -0000 1.42
@@ -141,7 +141,7 @@
ValueImp *DOMCSSStyleDeclaration::indexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
{
DOMCSSStyleDeclaration *thisObj = static_cast<DOMCSSStyleDeclaration *>(slot.slotBase());
- return getStringOrNull(thisObj->m_impl->item(slot.index()));
+ return jsStringOrNull(thisObj->m_impl->item(slot.index()));
}
ValueImp *DOMCSSStyleDeclaration::cssPropertyGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -158,11 +158,11 @@
CSSValueImpl *v = thisObj->m_impl->getPropertyCSSValue(prop);
if (v) {
if (pixelOrPos && v->cssValueType() == CSSValue::CSS_PRIMITIVE_VALUE)
- return Number(static_cast<CSSPrimitiveValueImpl *>(v)->getFloatValue(CSSPrimitiveValue::CSS_PX));
+ return jsNumber(static_cast<CSSPrimitiveValueImpl *>(v)->getFloatValue(CSSPrimitiveValue::CSS_PX));
else
- return getStringOrNull(v->cssText());
+ return jsStringOrNull(v->cssText());
} else
- return String("");
+ return jsString("");
}
bool DOMCSSStyleDeclaration::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -193,14 +193,14 @@
{
switch (token) {
case CssText:
- return getStringOrNull(m_impl->cssText());
+ return jsStringOrNull(m_impl->cssText());
case Length:
return jsNumber(m_impl->length());
case ParentRule:
return getDOMCSSRule(exec, m_impl->parentRule());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -252,24 +252,24 @@
switch (id) {
case DOMCSSStyleDeclaration::GetPropertyValue:
- return getStringOrNull(styleDecl.getPropertyValue(s));
+ return jsStringOrNull(styleDecl.getPropertyValue(s));
case DOMCSSStyleDeclaration::GetPropertyCSSValue:
return getDOMCSSValue(exec,styleDecl.getPropertyCSSValue(s));
case DOMCSSStyleDeclaration::RemoveProperty:
- return getStringOrNull(styleDecl.removeProperty(s, exception));
+ return jsStringOrNull(styleDecl.removeProperty(s, exception));
case DOMCSSStyleDeclaration::GetPropertyPriority:
- return getStringOrNull(styleDecl.getPropertyPriority(s));
+ return jsStringOrNull(styleDecl.getPropertyPriority(s));
case DOMCSSStyleDeclaration::GetPropertyShorthand:
- return getStringOrNull(styleDecl.getPropertyShorthand(s));
+ return jsStringOrNull(styleDecl.getPropertyShorthand(s));
case DOMCSSStyleDeclaration::IsPropertyImplicit:
- return Boolean(styleDecl.isPropertyImplicit(s));
+ return jsBoolean(styleDecl.isPropertyImplicit(s));
case DOMCSSStyleDeclaration::SetProperty:
styleDecl.setProperty(s, args[1]->toString(exec).domString(), args[2]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
case DOMCSSStyleDeclaration::Item:
- return getStringOrNull(styleDecl.item(args[0]->toInt32(exec)));
+ return jsStringOrNull(styleDecl.item(args[0]->toInt32(exec)));
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -308,17 +308,17 @@
StyleSheetImpl &styleSheet = *m_impl;
switch (token) {
case Type:
- return getStringOrNull(styleSheet.type());
+ return jsStringOrNull(styleSheet.type());
case Disabled:
- return Boolean(styleSheet.disabled());
+ return jsBoolean(styleSheet.disabled());
case OwnerNode:
return getDOMNode(exec,styleSheet.ownerNode());
case ParentStyleSheet:
return getDOMStyleSheet(exec,styleSheet.parentStyleSheet());
case Href:
- return getStringOrNull(styleSheet.href());
+ return jsStringOrNull(styleSheet.href());
case Title:
- return getStringOrNull(styleSheet.title());
+ return jsStringOrNull(styleSheet.title());
case Media:
return getDOMMediaList(exec, styleSheet.media());
}
@@ -338,7 +338,7 @@
{
DOMObject *ret;
if (!ss)
- return Null();
+ return jsNull();
ScriptInterpreter *interp = static_cast<ScriptInterpreter *>(exec->dynamicInterpreter());
if ((ret = interp->getDOMObject(ss)))
return ret;
@@ -373,10 +373,10 @@
{
switch(token) {
case Length:
- return Number(m_impl->length());
+ return jsNumber(m_impl->length());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -437,7 +437,7 @@
// Can't use the cacheDOMObject macro because of the doc argument
DOMObject *ret;
if (!ssl)
- return Null();
+ return jsNull();
ScriptInterpreter* interp = static_cast<ScriptInterpreter *>(exec->dynamicInterpreter());
if ((ret = interp->getDOMObject(ssl)))
return ret;
@@ -455,7 +455,7 @@
StyleSheetListImpl &styleSheetList = *static_cast<DOMStyleSheetList *>(thisObj)->impl();
if (id == DOMStyleSheetList::Item)
return getDOMStyleSheet(exec, styleSheetList.item(args[0]->toInt32(exec)));
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -492,19 +492,19 @@
{
switch (token) {
case MediaText:
- return getStringOrNull(m_impl->mediaText());
+ return jsStringOrNull(m_impl->mediaText());
case Length:
- return Number(m_impl->length());
+ return jsNumber(m_impl->length());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
ValueImp *DOMMediaList::indexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
{
DOMMediaList *thisObj = static_cast<DOMMediaList *>(slot.slotBase());
- return getStringOrNull(thisObj->m_impl->item(slot.index()));
+ return jsStringOrNull(thisObj->m_impl->item(slot.index()));
}
bool DOMMediaList::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -546,15 +546,15 @@
MediaListImpl &mediaList = *static_cast<DOMMediaList *>(thisObj)->impl();
switch (id) {
case DOMMediaList::Item:
- return getStringOrNull(mediaList.item(args[0]->toInt32(exec)));
+ return jsStringOrNull(mediaList.item(args[0]->toInt32(exec)));
case DOMMediaList::DeleteMedium:
mediaList.deleteMedium(args[0]->toString(exec).domString());
- return Undefined();
+ return jsUndefined();
case DOMMediaList::AppendMedium:
mediaList.appendMedium(args[0]->toString(exec).domString());
- return Undefined();
+ return jsUndefined();
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -600,7 +600,7 @@
return getDOMCSSRuleList(exec, static_cast<CSSStyleSheetImpl *>(impl())->cssRules());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -617,18 +617,18 @@
CSSStyleSheetImpl &styleSheet = *static_cast<CSSStyleSheetImpl *>(static_cast<DOMCSSStyleSheet *>(thisObj)->impl());
switch (id) {
case DOMCSSStyleSheet::InsertRule:
- return Number(styleSheet.insertRule(args[0]->toString(exec).domString(), args[1]->toInt32(exec), exception));
+ return jsNumber(styleSheet.insertRule(args[0]->toString(exec).domString(), args[1]->toInt32(exec), exception));
case DOMCSSStyleSheet::DeleteRule:
styleSheet.deleteRule(args[0]->toInt32(exec), exception);
- return Undefined();
+ return jsUndefined();
case DOMCSSStyleSheet::AddRule: {
int index = args.size() >= 3 ? args[2]->toInt32(exec) : -1;
styleSheet.addRule(args[0]->toString(exec).domString(), args[1]->toString(exec).domString(), index, exception);
// As per Microsoft documentation, always return -1.
- return Number(-1);
+ return jsNumber(-1);
}
}
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -651,10 +651,10 @@
{
switch (token) {
case Length:
- return Number(m_impl->length());
+ return jsNumber(m_impl->length());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -697,7 +697,7 @@
case DOMCSSRuleList::Item:
return getDOMCSSRule(exec,cssRuleList.item(args[0]->toInt32(exec)));
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -795,9 +795,9 @@
CSSRuleImpl &cssRule = *m_impl;
switch (token) {
case Type:
- return Number(cssRule.type());
+ return jsNumber(cssRule.type());
case CssText:
- return getStringOrNull(cssRule.cssText());
+ return jsStringOrNull(cssRule.cssText());
case ParentStyleSheet:
return getDOMStyleSheet(exec,cssRule.parentStyleSheet());
case ParentRule:
@@ -805,7 +805,7 @@
// for DOM::CSSRule::STYLE_RULE:
case Style_SelectorText:
- return getStringOrNull(static_cast<CSSStyleRuleImpl *>(m_impl.get())->selectorText());
+ return jsStringOrNull(static_cast<CSSStyleRuleImpl *>(m_impl.get())->selectorText());
case Style_Style:
return getDOMCSSStyleDeclaration(exec, static_cast<CSSStyleRuleImpl *>(m_impl.get())->style());
@@ -821,13 +821,13 @@
// for DOM::CSSRule::PAGE_RULE:
case Page_SelectorText:
- return getStringOrNull(static_cast<CSSPageRuleImpl *>(m_impl.get())->selectorText());
+ return jsStringOrNull(static_cast<CSSPageRuleImpl *>(m_impl.get())->selectorText());
case Page_Style:
return getDOMCSSStyleDeclaration(exec, static_cast<CSSPageRuleImpl *>(m_impl.get())->style());
// for DOM::CSSRule::IMPORT_RULE:
case Import_Href:
- return getStringOrNull(static_cast<CSSImportRuleImpl *>(m_impl.get())->href());
+ return jsStringOrNull(static_cast<CSSImportRuleImpl *>(m_impl.get())->href());
case Import_Media:
return getDOMMediaList(exec, static_cast<CSSImportRuleImpl *>(m_impl.get())->media());
case Import_StyleSheet:
@@ -835,12 +835,12 @@
// for DOM::CSSRule::CHARSET_RULE:
case Charset_Encoding:
- return getStringOrNull(static_cast<CSSCharsetRuleImpl *>(m_impl.get())->encoding());
+ return jsStringOrNull(static_cast<CSSCharsetRuleImpl *>(m_impl.get())->encoding());
default:
assert(0);
}
- return Undefined();
+ return jsUndefined();
}
void DOMCSSRule::put(ExecState *exec, const Identifier &propertyName, ValueImp *value, int attr)
@@ -894,12 +894,12 @@
if (cssRule.type() == DOM::CSSRule::MEDIA_RULE) {
CSSMediaRuleImpl &rule = static_cast<CSSMediaRuleImpl &>(cssRule);
if (id == DOMCSSRule::Media_InsertRule)
- return Number(rule.insertRule(args[0]->toString(exec).domString(), args[1]->toInt32(exec)));
+ return jsNumber(rule.insertRule(args[0]->toString(exec).domString(), args[1]->toInt32(exec)));
else if (id == DOMCSSRule::Media_DeleteRule)
rule.deleteRule(args[0]->toInt32(exec));
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *getDOMCSSRule(ExecState *exec, CSSRuleImpl *r)
@@ -931,19 +931,19 @@
{
switch (token) {
case UNKNOWN_RULE:
- return Number(DOM::CSSRule::UNKNOWN_RULE);
+ return jsNumber(DOM::CSSRule::UNKNOWN_RULE);
case STYLE_RULE:
- return Number(DOM::CSSRule::STYLE_RULE);
+ return jsNumber(DOM::CSSRule::STYLE_RULE);
case CHARSET_RULE:
- return Number(DOM::CSSRule::CHARSET_RULE);
+ return jsNumber(DOM::CSSRule::CHARSET_RULE);
case IMPORT_RULE:
- return Number(DOM::CSSRule::IMPORT_RULE);
+ return jsNumber(DOM::CSSRule::IMPORT_RULE);
case MEDIA_RULE:
- return Number(DOM::CSSRule::MEDIA_RULE);
+ return jsNumber(DOM::CSSRule::MEDIA_RULE);
case FONT_FACE_RULE:
- return Number(DOM::CSSRule::FONT_FACE_RULE);
+ return jsNumber(DOM::CSSRule::FONT_FACE_RULE);
case PAGE_RULE:
- return Number(DOM::CSSRule::PAGE_RULE);
+ return jsNumber(DOM::CSSRule::PAGE_RULE);
}
return NULL;
}
@@ -973,12 +973,12 @@
CSSValueImpl &cssValue = *m_impl;
switch (token) {
case CssText:
- return getStringOrNull(cssValue.cssText());
+ return jsStringOrNull(cssValue.cssText());
case CssValueType:
- return Number(cssValue.cssValueType());
+ return jsNumber(cssValue.cssValueType());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -1000,7 +1000,7 @@
{
DOMObject *ret;
if (!v)
- return Null();
+ return jsNull();
ScriptInterpreter* interp = static_cast<ScriptInterpreter *>(exec->dynamicInterpreter());
if ((ret = interp->getDOMObject(v)))
return ret;
@@ -1036,13 +1036,13 @@
{
switch (token) {
case CSS_INHERIT:
- return Number(DOM::CSSValue::CSS_INHERIT);
+ return jsNumber(DOM::CSSValue::CSS_INHERIT);
case CSS_PRIMITIVE_VALUE:
- return Number(DOM::CSSValue::CSS_PRIMITIVE_VALUE);
+ return jsNumber(DOM::CSSValue::CSS_PRIMITIVE_VALUE);
case CSS_VALUE_LIST:
- return Number(DOM::CSSValue::CSS_VALUE_LIST);
+ return jsNumber(DOM::CSSValue::CSS_VALUE_LIST);
case CSS_CUSTOM:
- return Number(DOM::CSSValue::CSS_CUSTOM);
+ return jsNumber(DOM::CSSValue::CSS_CUSTOM);
}
return NULL;
}
@@ -1082,7 +1082,7 @@
ValueImp *DOMCSSPrimitiveValue::getValueProperty(ExecState *exec, int token)
{
assert(token == PrimitiveType);
- return Number(static_cast<CSSPrimitiveValueImpl *>(impl())->primitiveType());
+ return jsNumber(static_cast<CSSPrimitiveValueImpl *>(impl())->primitiveType());
}
bool DOMCSSPrimitiveValue::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -1099,14 +1099,14 @@
switch (id) {
case DOMCSSPrimitiveValue::SetFloatValue:
val.setFloatValue(args[0]->toInt32(exec), args[1]->toNumber(exec), exception);
- return Undefined();
+ return jsUndefined();
case DOMCSSPrimitiveValue::GetFloatValue:
- return Number(val.getFloatValue(args[0]->toInt32(exec)));
+ return jsNumber(val.getFloatValue(args[0]->toInt32(exec)));
case DOMCSSPrimitiveValue::SetStringValue:
val.setStringValue(args[0]->toInt32(exec), args[1]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
case DOMCSSPrimitiveValue::GetStringValue:
- return getStringOrNull(val.getStringValue());
+ return jsStringOrNull(val.getStringValue());
case DOMCSSPrimitiveValue::GetCounterValue:
return getDOMCounter(exec,val.getCounterValue());
case DOMCSSPrimitiveValue::GetRectValue:
@@ -1114,7 +1114,7 @@
case DOMCSSPrimitiveValue::GetRGBColorValue:
return getDOMRGBColor(exec,val.getRGBColorValue());
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -1161,7 +1161,7 @@
ValueImp *CSSPrimitiveValueConstructor::getValueProperty(ExecState *, int token) const
{
// We use the token as the value to return directly
- return Number(token);
+ return jsNumber(token);
}
ValueImp *getCSSPrimitiveValueConstructor(ExecState *exec)
@@ -1189,7 +1189,7 @@
ValueImp *DOMCSSValueList::getValueProperty(ExecState *exec, int token) const
{
assert(token == Length);
- return Number(static_cast<CSSValueListImpl *>(impl())->length());
+ return jsNumber(static_cast<CSSValueListImpl *>(impl())->length());
}
ValueImp *DOMCSSValueList::indexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -1228,7 +1228,7 @@
case DOMCSSValueList::Item:
return getDOMCSSValue(exec,valueList.item(args[0]->toInt32(exec)));
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -1345,11 +1345,11 @@
CounterImpl &counter = *m_counter;
switch (token) {
case identifier:
- return getStringOrNull(counter.identifier());
+ return jsStringOrNull(counter.identifier());
case listStyle:
- return getStringOrNull(counter.listStyle());
+ return jsStringOrNull(counter.listStyle());
case separator:
- return getStringOrNull(counter.separator());
+ return jsStringOrNull(counter.separator());
default:
return NULL;
}
1.117 +98 -98 WebCore/khtml/ecma/kjs_dom.cpp
Index: kjs_dom.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_dom.cpp,v
retrieving revision 1.116
retrieving revision 1.117
diff -u -r1.116 -r1.117
--- kjs_dom.cpp 2 Dec 2005 03:48:05 -0000 1.116
+++ kjs_dom.cpp 11 Dec 2005 00:38:01 -0000 1.117
@@ -280,11 +280,11 @@
NodeImpl &node = *m_impl;
switch (token) {
case NodeName:
- return getStringOrNull(node.nodeName());
+ return jsStringOrNull(node.nodeName());
case NodeValue:
- return getStringOrNull(node.nodeValue());
+ return jsStringOrNull(node.nodeValue());
case NodeType:
- return Number(node.nodeType());
+ return jsNumber(node.nodeType());
case ParentNode:
case ParentElement: // IE only apparently
return getDOMNode(exec,node.parentNode());
@@ -301,15 +301,15 @@
case Attributes:
return getDOMNamedNodeMap(exec,node.attributes());
case NamespaceURI:
- return getStringOrNull(node.namespaceURI());
+ return jsStringOrNull(node.namespaceURI());
case Prefix:
- return getStringOrNull(node.prefix());
+ return jsStringOrNull(node.prefix());
case LocalName:
- return getStringOrNull(node.localName());
+ return jsStringOrNull(node.localName());
case OwnerDocument:
return getDOMNode(exec,node.ownerDocument());
case TextContent:
- return getStringOrNull(node.textContent());
+ return jsStringOrNull(node.textContent());
case OnAbort:
return getListener(abortEvent);
case OnBlur:
@@ -427,9 +427,9 @@
case ScrollHeight:
return rend ? jsNumber(rend->scrollHeight()) : static_cast<ValueImp *>(jsUndefined());
case ScrollLeft:
- return Number(rend && rend->layer() ? rend->layer()->scrollXOffset() : 0);
+ return jsNumber(rend && rend->layer() ? rend->layer()->scrollXOffset() : 0);
case ScrollTop:
- return Number(rend && rend->layer() ? rend->layer()->scrollYOffset() : 0);
+ return jsNumber(rend && rend->layer() ? rend->layer()->scrollYOffset() : 0);
default:
kdWarning() << "Unhandled token in DOMNode::getValueProperty : " << token << endl;
break;
@@ -608,9 +608,9 @@
ValueImp *DOMNode::toPrimitive(ExecState *exec, Type /*preferred*/) const
{
if (!m_impl)
- return Null();
+ return jsNull();
- return String(toString(exec));
+ return jsString(toString(exec));
}
UString DOMNode::toString(ExecState *) const
@@ -632,7 +632,7 @@
if ( jsListener && jsListener->listenerObjImp() )
return jsListener->listenerObj();
else
- return Null();
+ return jsNull();
}
void DOMNode::pushEventHandlerScope(ExecState *, ScopeChain &) const
@@ -647,41 +647,41 @@
NodeImpl &node = *static_cast<DOMNode *>(thisObj)->impl();
switch (id) {
case DOMNode::HasAttributes:
- return Boolean(node.hasAttributes());
+ return jsBoolean(node.hasAttributes());
case DOMNode::HasChildNodes:
- return Boolean(node.hasChildNodes());
+ return jsBoolean(node.hasChildNodes());
case DOMNode::CloneNode:
return getDOMNode(exec,node.cloneNode(args[0]->toBoolean(exec)));
case DOMNode::Normalize:
node.normalize();
- return Undefined();
+ return jsUndefined();
case DOMNode::IsSupported:
- return Boolean(node.isSupported(args[0]->toString(exec).domString(),
+ return jsBoolean(node.isSupported(args[0]->toString(exec).domString(),
args[1]->isUndefinedOrNull() ? DOMString() : args[1]->toString(exec).domString()));
case DOMNode::IsSameNode:
- return Boolean(node.isSameNode(toNode(args[0])));
+ return jsBoolean(node.isSameNode(toNode(args[0])));
case DOMNode::IsEqualNode:
- return Boolean(node.isEqualNode(toNode(args[0])));
+ return jsBoolean(node.isEqualNode(toNode(args[0])));
case DOMNode::IsDefaultNamespace:
- return Boolean(node.isDefaultNamespace(valueToStringWithNullCheck(exec, args[0])));
+ return jsBoolean(node.isDefaultNamespace(valueToStringWithNullCheck(exec, args[0])));
case DOMNode::LookupNamespaceURI:
- return getStringOrNull(node.lookupNamespaceURI(valueToStringWithNullCheck(exec, args[0])));
+ return jsStringOrNull(node.lookupNamespaceURI(valueToStringWithNullCheck(exec, args[0])));
case DOMNode::LookupPrefix:
- return getStringOrNull(node.lookupPrefix(valueToStringWithNullCheck(exec, args[0])));
+ return jsStringOrNull(node.lookupPrefix(valueToStringWithNullCheck(exec, args[0])));
case DOMNode::AddEventListener: {
JSEventListener *listener = Window::retrieveActive(exec)->getJSEventListener(args[1]);
if (listener)
node.addEventListener(AtomicString(args[0]->toString(exec).domString()), listener,args[2]->toBoolean(exec));
- return Undefined();
+ return jsUndefined();
}
case DOMNode::RemoveEventListener: {
JSEventListener *listener = Window::retrieveActive(exec)->getJSEventListener(args[1]);
if (listener)
node.removeEventListener(AtomicString(args[0]->toString(exec).domString()), listener,args[2]->toBoolean(exec));
- return Undefined();
+ return jsUndefined();
}
case DOMNode::DispatchEvent:
- return Boolean(node.dispatchEvent(toEvent(args[0]), exception));
+ return jsBoolean(node.dispatchEvent(toEvent(args[0]), exception));
case DOMNode::AppendChild:
return getDOMNode(exec,node.appendChild(toNode(args[0]), exception));
case DOMNode::RemoveChild:
@@ -693,15 +693,15 @@
case DOMNode::Contains:
if (node.isElementNode())
if (NodeImpl *node0 = toNode(args[0]))
- return Boolean(node.isAncestor(node0));
+ return jsBoolean(node.isAncestor(node0));
// FIXME: Is there a good reason to return undefined rather than false
// when the parameter is not a node? When the object is not an element?
- return Undefined();
+ return jsUndefined();
case DOMNode::Item:
return thisObj->get(exec, args[0]->toInt32(exec));
}
- return Undefined();
+ return jsUndefined();
}
NodeImpl *toNode(ValueImp *val)
@@ -732,15 +732,15 @@
ValueImp *DOMNodeList::toPrimitive(ExecState *exec, Type /*preferred*/) const
{
if (!m_impl)
- return Null();
+ return jsNull();
- return String(toString(exec));
+ return jsString(toString(exec));
}
ValueImp *DOMNodeList::getValueProperty(ExecState *exec, int token) const
{
assert(token == Length);
- return Number(m_impl->length());
+ return jsNumber(m_impl->length());
}
ValueImp *DOMNodeList::indexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -793,7 +793,7 @@
if (ok)
return getDOMNode(exec, m_impl->item(u));
- return Undefined();
+ return jsUndefined();
}
// Not a prototype class currently, but should probably be converted to one
@@ -837,11 +837,11 @@
AttrImpl *attr = static_cast<AttrImpl *>(impl());
switch (token) {
case Name:
- return getStringOrNull(attr->name());
+ return jsStringOrNull(attr->name());
case Specified:
- return Boolean(attr->specified());
+ return jsBoolean(attr->specified());
case ValueProperty:
- return getStringOrNull(attr->value());
+ return jsStringOrNull(attr->value());
case OwnerElement: // DOM2
return getDOMNode(exec, attr->ownerElement());
}
@@ -970,28 +970,28 @@
case ActualEncoding:
case InputEncoding:
if (Decoder* decoder = doc.decoder())
- return String(decoder->encoding());
- return Null();
+ return jsString(decoder->encoding());
+ return jsNull();
case DefaultCharset:
if (KHTMLPart* part = doc.part())
- return String(part->settings()->encoding());
- return Undefined();
+ return jsString(part->settings()->encoding());
+ return jsUndefined();
case StyleSheets:
//kdDebug() << "DOMDocument::StyleSheets, returning " << doc.styleSheets().length() << " stylesheets" << endl;
return getDOMStyleSheetList(exec, doc.styleSheets(), &doc);
case PreferredStylesheetSet:
- return getStringOrNull(doc.preferredStylesheetSet());
+ return jsStringOrNull(doc.preferredStylesheetSet());
case SelectedStylesheetSet:
- return getStringOrNull(doc.selectedStylesheetSet());
+ return jsStringOrNull(doc.selectedStylesheetSet());
case ReadyState:
if (KHTMLPart* part = doc.part()) {
- if (part->d->m_bComplete) return String("complete");
- if (doc.parsing()) return String("loading");
- return String("loaded");
+ if (part->d->m_bComplete) return jsString("complete");
+ if (doc.parsing()) return jsString("loading");
+ return jsString("loaded");
// What does the interactive value mean ?
// Missing support for "uninitialized"
}
- return Undefined();
+ return jsUndefined();
case DOMDocument::DefaultView: // DOM2
return getDOMAbstractView(exec,doc.defaultView());
default:
@@ -1092,21 +1092,21 @@
if (ElementImpl *element0 = toElement(args[0]))
return getDOMCSSStyleDeclaration(exec,doc.getOverrideStyle(element0, args[1]->toString(exec).domString()));
// FIXME: Is undefined right here, or should we raise an exception?
- return Undefined();
+ return jsUndefined();
case DOMDocument::ExecCommand: {
- return Boolean(doc.execCommand(args[0]->toString(exec).domString(), args[1]->toBoolean(exec), args[2]->toString(exec).domString()));
+ return jsBoolean(doc.execCommand(args[0]->toString(exec).domString(), args[1]->toBoolean(exec), args[2]->toString(exec).domString()));
}
case DOMDocument::QueryCommandEnabled: {
- return Boolean(doc.queryCommandEnabled(args[0]->toString(exec).domString()));
+ return jsBoolean(doc.queryCommandEnabled(args[0]->toString(exec).domString()));
}
case DOMDocument::QueryCommandIndeterm: {
- return Boolean(doc.queryCommandIndeterm(args[0]->toString(exec).domString()));
+ return jsBoolean(doc.queryCommandIndeterm(args[0]->toString(exec).domString()));
}
case DOMDocument::QueryCommandState: {
- return Boolean(doc.queryCommandState(args[0]->toString(exec).domString()));
+ return jsBoolean(doc.queryCommandState(args[0]->toString(exec).domString()));
}
case DOMDocument::QueryCommandSupported: {
- return Boolean(doc.queryCommandSupported(args[0]->toString(exec).domString()));
+ return jsBoolean(doc.queryCommandSupported(args[0]->toString(exec).domString()));
}
case DOMDocument::QueryCommandValue: {
DOM::DOMString commandValue(doc.queryCommandValue(args[0]->toString(exec).domString()));
@@ -1114,15 +1114,15 @@
// Microsoft documentation for this method says:
// "If not supported [for a command identifier], this method returns a Boolean set to false."
if (commandValue.isNull())
- return Boolean(false);
+ return jsBoolean(false);
else
- return String(commandValue);
+ return jsString(commandValue);
}
default:
break;
}
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -1181,12 +1181,12 @@
ElementImpl *element = static_cast<ElementImpl *>(impl());
switch (token) {
case TagName:
- return getStringOrNull(element->nodeName());
+ return jsStringOrNull(element->nodeName());
case Style:
return getDOMCSSStyleDeclaration(exec, element->style());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -1196,7 +1196,7 @@
ElementImpl *element = static_cast<ElementImpl *>(thisObj->impl());
DOM::DOMString attr = element->getAttribute(propertyName.domString());
- return getStringOrNull(attr);
+ return jsStringOrNull(attr);
}
bool DOMElement::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -1240,15 +1240,15 @@
switch(id) {
case DOMElement::GetAttribute:
- // getStringOrNull should be used here, since if the attribute isn't present at all, you should
+ // jsStringOrNull should be used here, since if the attribute isn't present at all, you should
// return null and not "".
- return getStringOrNull(element.getAttribute(args[0]->toString(exec).domString()));
+ return jsStringOrNull(element.getAttribute(args[0]->toString(exec).domString()));
case DOMElement::SetAttribute:
element.setAttribute(args[0]->toString(exec).domString(), args[1]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
case DOMElement::RemoveAttribute:
element.removeAttribute(args[0]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
case DOMElement::GetAttributeNode:
return getDOMNode(exec,element.getAttributeNode(args[0]->toString(exec).domString()));
case DOMElement::SetAttributeNode:
@@ -1258,15 +1258,15 @@
case DOMElement::GetElementsByTagName:
return getDOMNodeList(exec, element.getElementsByTagName(args[0]->toString(exec).domString()).get());
case DOMElement::HasAttribute: // DOM2
- return Boolean(element.hasAttribute(args[0]->toString(exec).domString()));
+ return jsBoolean(element.hasAttribute(args[0]->toString(exec).domString()));
case DOMElement::GetAttributeNS: // DOM2
- return String(element.getAttributeNS(args[0]->toString(exec).domString(),args[1]->toString(exec).domString()).domString());
+ return jsString(element.getAttributeNS(args[0]->toString(exec).domString(),args[1]->toString(exec).domString()).domString());
case DOMElement::SetAttributeNS: // DOM2
element.setAttributeNS(valueToStringWithNullCheck(exec, args[0]), args[1]->toString(exec).domString(), args[2]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
case DOMElement::RemoveAttributeNS: // DOM2
element.removeAttributeNS(args[0]->toString(exec).domString(), args[1]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
case DOMElement::GetAttributeNodeNS: // DOM2
return getDOMNode(exec,element.getAttributeNodeNS(args[0]->toString(exec).domString(),args[1]->toString(exec).domString()));
case DOMElement::SetAttributeNodeNS: // DOM2
@@ -1274,10 +1274,10 @@
case DOMElement::GetElementsByTagNameNS: // DOM2
return getDOMNodeList(exec, element.getElementsByTagNameNS(args[0]->toString(exec).domString(), args[1]->toString(exec).domString()).get());
case DOMElement::HasAttributeNS: // DOM2
- return Boolean(element.hasAttributeNS(args[0]->toString(exec).domString(),args[1]->toString(exec).domString()));
+ return jsBoolean(element.hasAttributeNS(args[0]->toString(exec).domString(),args[1]->toString(exec).domString()));
case DOMElement::ScrollIntoView:
element.scrollIntoView(args[0]->isUndefinedOrNull() || args[0]->toBoolean(exec));
- return Undefined();
+ return jsUndefined();
case DOMElement::ScrollByLines:
case DOMElement::ScrollByPages:
if (DocumentImpl* doc = element.getDocument()) {
@@ -1294,15 +1294,15 @@
rend->layer()->scroll(direction, granularity, multiplier);
}
}
- return Undefined();
+ return jsUndefined();
case DOMElement::ElementFocus:
element.focus();
- return Undefined();
+ return jsUndefined();
case DOMElement::ElementBlur:
element.blur();
- return Undefined();
+ return jsUndefined();
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -1351,7 +1351,7 @@
switch(id) {
case DOMDOMImplementation::HasFeature:
- return Boolean(implementation.hasFeature(args[0]->toString(exec).domString(),
+ return jsBoolean(implementation.hasFeature(args[0]->toString(exec).domString(),
args[1]->isUndefinedOrNull() ? DOMString() : args[1]->toString(exec).domString()));
case DOMDOMImplementation::CreateDocumentType: // DOM2
return getDOMNode(exec, implementation.createDocumentType(args[0]->toString(exec).domString(),
@@ -1366,7 +1366,7 @@
default:
break;
}
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -1397,17 +1397,17 @@
DocumentTypeImpl &type = *static_cast<DocumentTypeImpl *>(impl());
switch (token) {
case Name:
- return getStringOrNull(type.name());
+ return jsStringOrNull(type.name());
case Entities:
return getDOMNamedNodeMap(exec,type.entities());
case Notations:
return getDOMNamedNodeMap(exec,type.notations());
case PublicId: // DOM2
- return getStringOrNull(type.publicId());
+ return jsStringOrNull(type.publicId());
case SystemId: // DOM2
- return getStringOrNull(type.systemId());
+ return jsStringOrNull(type.systemId());
case InternalSubset: // DOM2
- return getStringOrNull(type.internalSubset());
+ return jsStringOrNull(type.internalSubset());
default:
kdWarning() << "DOMDocumentType::getValueProperty unhandled token " << token << endl;
return NULL;
@@ -1455,7 +1455,7 @@
ValueImp *DOMNamedNodeMap::lengthGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
{
DOMNamedNodeMap *thisObj = static_cast<DOMNamedNodeMap *>(slot.slotBase());
- return Number(thisObj->m_impl->length());
+ return jsNumber(thisObj->m_impl->length());
}
ValueImp *DOMNamedNodeMap::indexGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -1524,7 +1524,7 @@
break;
}
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -1554,9 +1554,9 @@
ProcessingInstructionImpl *pi = static_cast<ProcessingInstructionImpl *>(impl());
switch (token) {
case Target:
- return getStringOrNull(pi->target());
+ return jsStringOrNull(pi->target());
case Data:
- return getStringOrNull(pi->data());
+ return jsStringOrNull(pi->data());
case Sheet:
return getDOMStyleSheet(exec,pi->sheet());
default:
@@ -1601,9 +1601,9 @@
{
switch (token) {
case PublicId:
- return getStringOrNull(static_cast<NotationImpl *>(impl())->publicId());
+ return jsStringOrNull(static_cast<NotationImpl *>(impl())->publicId());
case SystemId:
- return getStringOrNull(static_cast<NotationImpl *>(impl())->systemId());
+ return jsStringOrNull(static_cast<NotationImpl *>(impl())->systemId());
default:
kdWarning() << "DOMNotation::getValueProperty unhandled token " << token << endl;
return NULL;
@@ -1636,11 +1636,11 @@
{
switch (token) {
case PublicId:
- return getStringOrNull(static_cast<EntityImpl *>(impl())->publicId());
+ return jsStringOrNull(static_cast<EntityImpl *>(impl())->publicId());
case SystemId:
- return getStringOrNull(static_cast<EntityImpl *>(impl())->systemId());
+ return jsStringOrNull(static_cast<EntityImpl *>(impl())->systemId());
case NotationName:
- return getStringOrNull(static_cast<EntityImpl *>(impl())->notationName());
+ return jsStringOrNull(static_cast<EntityImpl *>(impl())->notationName());
default:
kdWarning() << "DOMEntity::getValueProperty unhandled token " << token << endl;
return NULL;
@@ -1689,7 +1689,7 @@
{
DOMNode *ret = 0;
if (!n)
- return Null();
+ return jsNull();
ScriptInterpreter* interp = static_cast<ScriptInterpreter *>(exec->dynamicInterpreter());
DocumentImpl *doc = n->getDocument();
@@ -1807,7 +1807,7 @@
ValueImp *NodeConstructor::getValueProperty(ExecState *, int token) const
{
// We use the token as the value to return directly
- return Number((unsigned int)token);
+ return jsNumber(token);
}
ObjectImp *getNodeConstructor(ExecState *exec)
@@ -1847,7 +1847,7 @@
ValueImp *DOMExceptionConstructor::getValueProperty(ExecState *, int token) const
{
// We use the token as the value to return directly
- return Number((unsigned int)token);
+ return jsNumber(token);
}
ObjectImp *getDOMExceptionConstructor(ExecState *exec)
@@ -1868,7 +1868,7 @@
ValueImp *DOMNamedNodesCollection::lengthGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
{
DOMNamedNodesCollection *thisObj = static_cast<DOMNamedNodesCollection *>(slot.slotBase());
- return Number(thisObj->m_nodes.count());
+ return jsNumber(thisObj->m_nodes.count());
}
ValueImp *DOMNamedNodesCollection::indexGetter(ExecState* exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -1951,9 +1951,9 @@
CharacterDataImpl &data = *static_cast<CharacterDataImpl *>(impl());
switch (token) {
case Data:
- return String(data.data());
+ return jsString(data.data());
case Length:
- return Number(data.length());
+ return jsNumber(data.length());
default:
kdWarning() << "Unhandled token in DOMCharacterData::getValueProperty : " << token << endl;
return NULL;
@@ -1981,21 +1981,21 @@
if (count < 0)
setDOMException(exec, DOMException::INDEX_SIZE_ERR);
else
- return getStringOrNull(data.substringData(args[0]->toInt32(exec), count, exception));
+ return jsStringOrNull(data.substringData(args[0]->toInt32(exec), count, exception));
}
case DOMCharacterData::AppendData:
data.appendData(args[0]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
case DOMCharacterData::InsertData:
data.insertData(args[0]->toInt32(exec), args[1]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
case DOMCharacterData::DeleteData: {
const int count = args[1]->toInt32(exec);
if (count < 0)
setDOMException(exec, DOMException::INDEX_SIZE_ERR);
else
data.deleteData(args[0]->toInt32(exec), count, exception);
- return Undefined();
+ return jsUndefined();
}
case DOMCharacterData::ReplaceData: {
const int count = args[1]->toInt32(exec);
@@ -2003,10 +2003,10 @@
setDOMException(exec, DOMException::INDEX_SIZE_ERR);
else
data.replaceData(args[0]->toInt32(exec), count, args[2]->toString(exec).domString(), exception);
- return Undefined();
+ return jsUndefined();
}
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -2039,7 +2039,7 @@
case DOMText::SplitText:
return getDOMNode(exec, text.splitText(args[0]->toInt32(exec), exception));
}
- return Undefined();
+ return jsUndefined();
}
} // namespace
1.75 +84 -84 WebCore/khtml/ecma/kjs_events.cpp
Index: kjs_events.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_events.cpp,v
retrieving revision 1.74
retrieving revision 1.75
diff -u -r1.74 -r1.75
--- kjs_events.cpp 4 Dec 2005 11:35:08 -0000 1.74
+++ kjs_events.cpp 11 Dec 2005 00:38:01 -0000 1.75
@@ -300,10 +300,10 @@
ObjectImp *constr = interpreter->builtinFunction();
List args;
- static ProtectedPtr<ValueImp> eventString = String("event");
+ static ProtectedPtr<ValueImp> eventString = jsString("event");
UString sourceURL(part->m_url.url());
args.append(eventString);
- args.append(String(code));
+ args.append(jsString(code));
listener = constr->construct(exec, args, sourceURL, lineNumber); // ### is globalExec ok ?
if (exec->hadException()) {
@@ -386,7 +386,7 @@
ValueImp *EventConstructor::getValueProperty(ExecState *, int token) const
{
// We use the token as the value to return directly
- return Number(token);
+ return jsNumber(token);
}
ValueImp *getEventConstructor(ExecState *exec)
@@ -451,24 +451,24 @@
EventImpl &event = *m_impl;
switch (token) {
case Type:
- return String(event.type().domString());
+ return jsString(event.type().domString());
case Target:
case SrcElement: /*MSIE extension - "the object that fired the event"*/
return getDOMNode(exec, event.target());
case CurrentTarget:
return getDOMNode(exec, event.currentTarget());
case EventPhase:
- return Number((unsigned int)event.eventPhase());
+ return jsNumber(event.eventPhase());
case Bubbles:
- return Boolean(event.bubbles());
+ return jsBoolean(event.bubbles());
case CancelBubble:
- return Boolean(event.getCancelBubble());
+ return jsBoolean(event.getCancelBubble());
case ReturnValue:
- return Boolean(!event.defaultPrevented());
+ return jsBoolean(!event.defaultPrevented());
case Cancelable:
- return Boolean(event.cancelable());
+ return jsBoolean(event.cancelable());
case TimeStamp:
- return Number(event.timeStamp());
+ return jsNumber(event.timeStamp());
case ClipboardData:
{
if (event.isClipboardEvent()) {
@@ -478,7 +478,7 @@
}
return clipboard;
} else {
- return Undefined();
+ return jsUndefined();
}
}
case DataTransfer:
@@ -490,7 +490,7 @@
}
return clipboard;
} else {
- return Undefined();
+ return jsUndefined();
}
}
default:
@@ -529,21 +529,21 @@
switch (id) {
case DOMEvent::StopPropagation:
event.stopPropagation();
- return Undefined();
+ return jsUndefined();
case DOMEvent::PreventDefault:
event.preventDefault();
- return Undefined();
+ return jsUndefined();
case DOMEvent::InitEvent:
event.initEvent(AtomicString(args[0]->toString(exec).domString()), args[1]->toBoolean(exec), args[2]->toBoolean(exec));
- return Undefined();
+ return jsUndefined();
};
- return Undefined();
+ return jsUndefined();
}
ValueImp *getDOMEvent(ExecState *exec, EventImpl *e)
{
if (!e)
- return Null();
+ return jsNull();
ScriptInterpreter* interp = static_cast<ScriptInterpreter *>(exec->dynamicInterpreter());
JSLock lock;
@@ -593,7 +593,7 @@
ValueImp *EventExceptionConstructor::getValueProperty(ExecState *, int token) const
{
// We use the token as the value to return directly
- return Number(token);
+ return jsNumber(token);
}
ValueImp *getEventExceptionConstructor(ExecState *exec)
@@ -646,24 +646,24 @@
case View:
return getDOMAbstractView(exec, event.view());
case Detail:
- return Number(event.detail());
+ return jsNumber(event.detail());
case KeyCode:
- return Number(event.keyCode());
+ return jsNumber(event.keyCode());
case CharCode:
- return Number(event.charCode());
+ return jsNumber(event.charCode());
case LayerX:
- return Number(event.layerX());
+ return jsNumber(event.layerX());
case LayerY:
- return Number(event.layerY());
+ return jsNumber(event.layerY());
case PageX:
- return Number(event.pageX());
+ return jsNumber(event.pageX());
case PageY:
- return Number(event.pageY());
+ return jsNumber(event.pageY());
case Which:
- return Number(event.which());
+ return jsNumber(event.which());
default:
kdWarning() << "Unhandled token in DOMUIEvent::getValueProperty : " << token << endl;
- return Undefined();
+ return jsUndefined();
}
}
@@ -679,9 +679,9 @@
args[2]->toBoolean(exec),
toAbstractView(args[3]),
args[4]->toInt32(exec));
- return Undefined();
+ return jsUndefined();
}
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -758,30 +758,30 @@
MouseEventImpl &event = *static_cast<MouseEventImpl *>(impl());
switch (token) {
case ScreenX:
- return Number(event.screenX());
+ return jsNumber(event.screenX());
case ScreenY:
- return Number(event.screenY());
+ return jsNumber(event.screenY());
case ClientX:
case X:
- return Number(event.clientX());
+ return jsNumber(event.clientX());
case ClientY:
case Y:
- return Number(event.clientY());
+ return jsNumber(event.clientY());
case OffsetX: // MSIE extension
- return Number(offsetFromTarget(&event).x());
+ return jsNumber(offsetFromTarget(&event).x());
case OffsetY: // MSIE extension
- return Number(offsetFromTarget(&event).y());
+ return jsNumber(offsetFromTarget(&event).y());
case CtrlKey:
- return Boolean(event.ctrlKey());
+ return jsBoolean(event.ctrlKey());
case ShiftKey:
- return Boolean(event.shiftKey());
+ return jsBoolean(event.shiftKey());
case AltKey:
- return Boolean(event.altKey());
+ return jsBoolean(event.altKey());
case MetaKey:
- return Boolean(event.metaKey());
+ return jsBoolean(event.metaKey());
case Button:
// WinIE uses 1,4,2 for left/middle/right but not for click (just for mousedown/up, maybe others), but we will match the standard DOM.
- return Number(event.button());
+ return jsNumber(event.button());
case ToElement:
// MSIE extension - "the object toward which the user is moving the mouse pointer"
return getDOMNode(exec, event.type() == mouseoutEvent ? event.relatedTarget() : event.target());
@@ -818,9 +818,9 @@
args[12]->toBoolean(exec), // metaKeyArg
args[13]->toInt32(exec), // buttonArg
toNode(args[14])); // relatedTargetArg
- return Undefined();
+ return jsUndefined();
}
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -870,19 +870,19 @@
KeyboardEventImpl &event = *static_cast<KeyboardEventImpl *>(impl());
switch (token) {
case KeyIdentifier:
- return String(event.keyIdentifier());
+ return jsString(event.keyIdentifier());
case KeyLocation:
- return Number(event.keyLocation());
+ return jsNumber(event.keyLocation());
case CtrlKey:
- return Boolean(event.ctrlKey());
+ return jsBoolean(event.ctrlKey());
case ShiftKey:
- return Boolean(event.shiftKey());
+ return jsBoolean(event.shiftKey());
case AltKey:
- return Boolean(event.altKey());
+ return jsBoolean(event.altKey());
case MetaKey:
- return Boolean(event.metaKey());
+ return jsBoolean(event.metaKey());
case AltGraphKey:
- return Boolean(event.altGraphKey());
+ return jsBoolean(event.altGraphKey());
default:
kdWarning() << "Unhandled token in DOMKeyboardEvent::getValueProperty : " << token << endl;
return NULL;
@@ -907,9 +907,9 @@
args[8]->toBoolean(exec), // shiftKeyArg
args[9]->toBoolean(exec), // metaKeyArg
args[10]->toBoolean(exec)); // altGraphKeyArg
- return Undefined();
+ return jsUndefined();
}
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -930,7 +930,7 @@
ValueImp *MutationEventConstructor::getValueProperty(ExecState *, int token) const
{
// We use the token as the value to return directly
- return Number(token);
+ return jsNumber(token);
}
ValueImp *getMutationEventConstructor(ExecState *exec)
@@ -979,13 +979,13 @@
case RelatedNode:
return getDOMNode(exec, event.relatedNode());
case PrevValue:
- return String(event.prevValue());
+ return jsString(event.prevValue());
case NewValue:
- return String(event.newValue());
+ return jsString(event.newValue());
case AttrName:
- return String(event.attrName());
+ return jsString(event.attrName());
case AttrChange:
- return Number(event.attrChange());
+ return jsNumber(event.attrChange());
default:
kdWarning() << "Unhandled token in DOMMutationEvent::getValueProperty : " << token << endl;
return NULL;
@@ -1007,9 +1007,9 @@
args[5]->toString(exec).domString(), // newValueArg
args[6]->toString(exec).domString(), // attrNameArg
args[7]->toInt32(exec)); // attrChangeArg
- return Undefined();
+ return jsUndefined();
}
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -1053,38 +1053,38 @@
DOM::WheelEventImpl *e = static_cast<DOM::WheelEventImpl *>(impl());
switch (token) {
case AltKey:
- return Boolean(e->altKey());
+ return jsBoolean(e->altKey());
case ClientX:
case X:
- return Number(e->clientX());
+ return jsNumber(e->clientX());
case ClientY:
case Y:
- return Number(e->clientY());
+ return jsNumber(e->clientY());
case CtrlKey:
- return Number(e->ctrlKey());
+ return jsNumber(e->ctrlKey());
case MetaKey:
- return Number(e->metaKey());
+ return jsNumber(e->metaKey());
case OffsetX:
- return Number(offsetFromTarget(e).x());
+ return jsNumber(offsetFromTarget(e).x());
case OffsetY:
- return Number(offsetFromTarget(e).y());
+ return jsNumber(offsetFromTarget(e).y());
case ScreenX:
- return Number(e->screenX());
+ return jsNumber(e->screenX());
case ScreenY:
- return Number(e->screenY());
+ return jsNumber(e->screenY());
case ShiftKey:
- return Boolean(e->shiftKey());
+ return jsBoolean(e->shiftKey());
case WheelDelta:
- return Number(e->wheelDelta());
+ return jsNumber(e->wheelDelta());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *DOMWheelEventProtoFunc::callAsFunction(ExecState *exec, ObjectImp *thisObj, const List &args)
{
if (!thisObj->inherits(&DOMWheelEvent::info))
return throwError(exec, TypeError);
- return Undefined();
+ return jsUndefined();
}
// -------------------------------------------------------------------------
@@ -1127,9 +1127,9 @@
static ValueImp *stringOrUndefined(const DOM::DOMString &str)
{
if (str.isNull()) {
- return Undefined();
+ return jsUndefined();
} else {
- return String(str);
+ return jsString(str);
}
}
@@ -1151,11 +1151,11 @@
{
QStringList qTypes = clipboard->types();
if (qTypes.isEmpty()) {
- return Null();
+ return jsNull();
} else {
List list;
for (QStringList::Iterator it = qTypes.begin(); it != qTypes.end(); ++it) {
- list.append(String(UString(*it)));
+ list.append(jsString(UString(*it)));
}
return exec->lexicalInterpreter()->builtinArray()->construct(exec, list);
}
@@ -1199,10 +1199,10 @@
case Clipboard::ClearData:
if (args.size() == 0) {
cb->clipboard->clearAllData();
- return Undefined();
+ return jsUndefined();
} else if (args.size() == 1) {
cb->clipboard->clearData(args[0]->toString(exec).domString());
- return Undefined();
+ return jsUndefined();
} else {
return throwError(exec, SyntaxError, "clearData: Invalid number of arguments");
}
@@ -1212,9 +1212,9 @@
bool success;
DOM::DOMString result = cb->clipboard->getData(args[0]->toString(exec).domString(), success);
if (success) {
- return String(result);
+ return jsString(result);
} else {
- return Undefined();
+ return jsUndefined();
}
} else {
return throwError(exec, SyntaxError, "getData: Invalid number of arguments");
@@ -1222,14 +1222,14 @@
}
case Clipboard::SetData:
if (args.size() == 2) {
- return Boolean(cb->clipboard->setData(args[0]->toString(exec).domString(), args[1]->toString(exec).domString()));
+ return jsBoolean(cb->clipboard->setData(args[0]->toString(exec).domString(), args[1]->toString(exec).domString()));
} else {
return throwError(exec, SyntaxError, "setData: Invalid number of arguments");
}
case Clipboard::SetDragImage:
{
if (!cb->clipboard->isForDragging()) {
- return Undefined();
+ return jsUndefined();
}
if (args.size() != 3)
@@ -1243,7 +1243,7 @@
if (node) {
if (node->isElementNode()) {
cb->clipboard->setDragImageElement(node, QPoint(x,y));
- return Undefined();
+ return jsUndefined();
} else {
return throwError(exec, SyntaxError, "setDragImageFromElement: Invalid first argument");
}
@@ -1254,13 +1254,13 @@
if (o->isObject() && o->inherits(&Image::info)) {
Image *JSImage = static_cast<Image*>(o);
cb->clipboard->setDragImage(JSImage->image()->pixmap(), QPoint(x,y));
- return Undefined();
+ return jsUndefined();
} else {
return throwError(exec, TypeError);
}
}
}
- return Undefined();
+ return jsUndefined();
}
}
1.152 +460 -460 WebCore/khtml/ecma/kjs_html.cpp
Index: kjs_html.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_html.cpp,v
retrieving revision 1.151
retrieving revision 1.152
diff -u -r1.151 -r1.152
--- kjs_html.cpp 3 Dec 2005 20:26:00 -0000 1.151
+++ kjs_html.cpp 11 Dec 2005 00:38:01 -0000 1.152
@@ -159,7 +159,7 @@
switch (id) {
case HTMLDocument::Clear: // even IE doesn't support that one...
//doc.clear(); // TODO
- return Undefined();
+ return jsUndefined();
case HTMLDocument::Open:
// For compatibility with other browsers, pass open calls with more than 2 parameters to the window.
if (args.size() > 2) {
@@ -173,15 +173,15 @@
return functionObject->call(exec, window, args);
}
}
- return Undefined();
+ return jsUndefined();
}
// In the case of two parameters or fewer, do a normal document open.
doc.open();
- return Undefined();
+ return jsUndefined();
case HTMLDocument::Close:
// see khtmltests/ecma/tokenizer-script-recursion.html
doc.close();
- return Undefined();
+ return jsUndefined();
case HTMLDocument::Write:
case HTMLDocument::WriteLn: {
// DOM only specifies single string argument, but NS & IE allow multiple
@@ -193,7 +193,7 @@
str += "\n";
//kdDebug() << "document.write: " << str.ascii() << endl;
doc.write(str.domString());
- return Undefined();
+ return jsUndefined();
}
case HTMLDocument::GetElementsByName:
return getDOMNodeList(exec, doc.getElementsByName(args[0]->toString(exec).domString()).get());
@@ -203,7 +203,7 @@
break;
}
- return Undefined();
+ return jsUndefined();
}
const ClassInfo KJS::HTMLDocument::info =
@@ -296,21 +296,21 @@
switch (token) {
case Title:
- return String(doc.title());
+ return jsString(doc.title());
case Referrer:
- return String(doc.referrer());
+ return jsString(doc.referrer());
case Domain:
- return String(doc.domain());
+ return jsString(doc.domain());
case URL:
- return String(doc.URL());
+ return jsString(doc.URL());
case Body:
return getDOMNode(exec, body);
case Location:
if (Window* win = Window::retrieveWindow(part))
return win->location();
- return Undefined();
+ return jsUndefined();
case Cookie:
- return String(doc.cookie());
+ return jsString(doc.cookie());
case Images:
return getHTMLCollection(exec, doc.images().get());
case Embeds:
@@ -328,49 +328,49 @@
// To be implemented. Meanwhile, return an object with a length property set to 0
kdWarning() << "KJS::HTMLDocument document.scripts called - not implemented" << endl;
ObjectImp *obj = new ObjectImp;
- obj->put(exec, lengthPropertyName, Number(0));
+ obj->put(exec, lengthPropertyName, jsNumber(0));
return obj;
}
case All:
// Disable document.all when we try to be Netscape-compatible
if (exec->dynamicInterpreter()->compatMode() == Interpreter::NetscapeCompat)
- return Undefined();
+ return jsUndefined();
return getHTMLCollection(exec, doc.all().get());
case BgColor:
if (!bodyElement)
- return Undefined();
- return String(bodyElement->bgColor());
+ return jsUndefined();
+ return jsString(bodyElement->bgColor());
case FgColor:
if (!bodyElement)
- return Undefined();
- return String(bodyElement->text());
+ return jsUndefined();
+ return jsString(bodyElement->text());
case AlinkColor:
if (!bodyElement)
- return Undefined();
- return String(bodyElement->aLink());
+ return jsUndefined();
+ return jsString(bodyElement->aLink());
case LinkColor:
if (!bodyElement)
- return Undefined();
- return String(bodyElement->link());
+ return jsUndefined();
+ return jsString(bodyElement->link());
case VlinkColor:
if (!bodyElement)
- return Undefined();
- return String(bodyElement->vLink());
+ return jsUndefined();
+ return jsString(bodyElement->vLink());
case LastModified:
- return String(doc.lastModified());
+ return jsString(doc.lastModified());
case Height:
- return Number(view ? view->contentsHeight() : 0);
+ return jsNumber(view ? view->contentsHeight() : 0);
case Width:
- return Number(view ? view->contentsWidth() : 0);
+ return jsNumber(view ? view->contentsWidth() : 0);
case Dir:
if (!bodyElement)
- return Undefined();
- return String(bodyElement->dir());
+ return jsUndefined();
+ return jsString(bodyElement->dir());
case DesignMode:
- return String(doc.inDesignMode() ? "on" : "off");
+ return jsString(doc.inDesignMode() ? "on" : "off");
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -1293,7 +1293,7 @@
if (Window *window = Window::retrieveWindow(doc->part()))
return window;
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::frameWindowPropertyGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -1304,7 +1304,7 @@
if (Window *window = Window::retrieveWindow(doc->part()))
return window->get(exec, propertyName);
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::runtimeObjectGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -1322,7 +1322,7 @@
if (ValueImp *runtimeObject = getRuntimeObject(exec, element))
return static_cast<ObjectImp *>(runtimeObject)->get(exec, propertyName);
- return Undefined();
+ return jsUndefined();
}
bool HTMLElement::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -1435,23 +1435,23 @@
if (ValueImp *runtimeObject = getRuntimeObject(exec, element))
return static_cast<ObjectImp *>(runtimeObject)->call(exec, thisObj, args);
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::htmlGetter(ExecState* exec, int token) const
{
HTMLHtmlElementImpl& html = *static_cast<HTMLHtmlElementImpl*>(impl());
if (token == HtmlVersion)
- return String(html.version());
- return Undefined();
+ return jsString(html.version());
+ return jsUndefined();
}
ValueImp *HTMLElement::headGetter(ExecState* exec, int token) const
{
HTMLHeadElementImpl &head = *static_cast<HTMLHeadElementImpl*>(impl());
if (token == HeadProfile)
- return String(head.profile());
- return Undefined();
+ return jsString(head.profile());
+ return jsUndefined();
}
ValueImp *HTMLElement::linkGetter(ExecState* exec, int token) const
@@ -1459,57 +1459,57 @@
HTMLLinkElementImpl &link = *static_cast<HTMLLinkElementImpl*>(impl());
switch (token) {
case LinkDisabled:
- return Boolean(link.disabled());
+ return jsBoolean(link.disabled());
case LinkCharset:
- return String(link.charset());
+ return jsString(link.charset());
case LinkHref:
- return String(link.href());
+ return jsString(link.href());
case LinkHrefLang:
- return String(link.hreflang());
+ return jsString(link.hreflang());
case LinkMedia:
- return String(link.media());
+ return jsString(link.media());
case LinkRel:
- return String(link.rel());
+ return jsString(link.rel());
case LinkRev:
- return String(link.rev());
+ return jsString(link.rev());
case LinkTarget:
- return String(link.target());
+ return jsString(link.target());
case LinkType:
- return String(link.type());
+ return jsString(link.type());
case LinkSheet:
return getDOMStyleSheet(exec, link.sheet());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::titleGetter(ExecState* exec, int token) const
{
HTMLTitleElementImpl& title = *static_cast<HTMLTitleElementImpl*>(impl());
if (token == TitleText)
- return String(title.text());
- return Undefined();
+ return jsString(title.text());
+ return jsUndefined();
}
ValueImp *HTMLElement::metaGetter(ExecState* exec, int token) const
{
HTMLMetaElementImpl& meta = *static_cast<HTMLMetaElementImpl*>(impl());
switch (token) {
- case MetaContent: return String(meta.content());
- case MetaHttpEquiv: return String(meta.httpEquiv());
- case MetaName: return String(meta.name());
- case MetaScheme: return String(meta.scheme());
+ case MetaContent: return jsString(meta.content());
+ case MetaHttpEquiv: return jsString(meta.httpEquiv());
+ case MetaName: return jsString(meta.name());
+ case MetaScheme: return jsString(meta.scheme());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::baseGetter(ExecState* exec, int token) const
{
HTMLBaseElementImpl& base = *static_cast<HTMLBaseElementImpl*>(impl());
switch (token) {
- case BaseHref: return String(base.href());
- case BaseTarget: return String(base.target());
+ case BaseHref: return jsString(base.href());
+ case BaseTarget: return jsString(base.target());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::isIndexGetter(ExecState* exec, int token) const
@@ -1517,33 +1517,33 @@
HTMLIsIndexElementImpl& isindex = *static_cast<HTMLIsIndexElementImpl*>(impl());
switch (token) {
case IsIndexForm: return getDOMNode(exec, isindex.form()); // type HTMLFormElement
- case IsIndexPrompt: return String(isindex.prompt());
+ case IsIndexPrompt: return jsString(isindex.prompt());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::styleGetter(ExecState* exec, int token) const
{
HTMLStyleElementImpl& style = *static_cast<HTMLStyleElementImpl*>(impl());
switch (token) {
- case StyleDisabled: return Boolean(style.disabled());
- case StyleMedia: return String(style.media());
- case StyleType: return String(style.type());
+ case StyleDisabled: return jsBoolean(style.disabled());
+ case StyleMedia: return jsString(style.media());
+ case StyleType: return jsString(style.type());
case StyleSheet: return getDOMStyleSheet(exec, style.sheet());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::bodyGetter(ExecState* exec, int token) const
{
HTMLBodyElementImpl& body = *static_cast<HTMLBodyElementImpl*>(impl());
switch (token) {
- case BodyALink: return String(body.aLink());
- case BodyBackground: return String(body.background());
- case BodyBgColor: return String(body.bgColor());
- case BodyLink: return String(body.link());
- case BodyText: return String(body.text());
- case BodyVLink: return String(body.vLink());
+ case BodyALink: return jsString(body.aLink());
+ case BodyBackground: return jsString(body.background());
+ case BodyBgColor: return jsString(body.bgColor());
+ case BodyLink: return jsString(body.link());
+ case BodyText: return jsString(body.text());
+ case BodyVLink: return jsString(body.vLink());
default: {
// Update the document's layout before we compute these attributes.
DocumentImpl *doc = body.getDocument();
@@ -1552,17 +1552,17 @@
KHTMLView *view = doc ? doc->view() : 0;
switch (token) {
case BodyScrollLeft:
- return Number(view ? view->contentsX() : 0);
+ return jsNumber(view ? view->contentsX() : 0);
case BodyScrollTop:
- return Number(view ? view->contentsY() : 0);
+ return jsNumber(view ? view->contentsY() : 0);
case BodyScrollHeight:
- return Number(view ? view->contentsHeight() : 0);
+ return jsNumber(view ? view->contentsHeight() : 0);
case BodyScrollWidth:
- return Number(view ? view->contentsWidth() : 0);
+ return jsNumber(view ? view->contentsWidth() : 0);
}
}
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::formGetter(ExecState* exec, int token) const
@@ -1570,44 +1570,44 @@
HTMLFormElementImpl& form = *static_cast<HTMLFormElementImpl*>(impl());
switch (token) {
case FormElements: return getHTMLCollection(exec, form.elements().get());
- case FormLength: return Number(form.length());
- case FormName: return String(form.name());
- case FormAcceptCharset: return String(form.acceptCharset());
- case FormAction: return String(form.action());
- case FormEncType: return String(form.enctype());
- case FormMethod: return String(form.method());
- case FormTarget: return String(form.target());
+ case FormLength: return jsNumber(form.length());
+ case FormName: return jsString(form.name());
+ case FormAcceptCharset: return jsString(form.acceptCharset());
+ case FormAction: return jsString(form.action());
+ case FormEncType: return jsString(form.enctype());
+ case FormMethod: return jsString(form.method());
+ case FormTarget: return jsString(form.target());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::selectGetter(ExecState* exec, int token) const
{
HTMLSelectElementImpl& select = *static_cast<HTMLSelectElementImpl*>(impl());
switch (token) {
- case SelectType: return String(select.type());
- case SelectSelectedIndex: return Number(select.selectedIndex());
- case SelectValue: return String(select.value());
- case SelectLength: return Number(select.length());
+ case SelectType: return jsString(select.type());
+ case SelectSelectedIndex: return jsNumber(select.selectedIndex());
+ case SelectValue: return jsString(select.value());
+ case SelectLength: return jsNumber(select.length());
case SelectForm: return getDOMNode(exec, select.form()); // type HTMLFormElement
case SelectOptions: return getSelectHTMLCollection(exec, select.optionsHTMLCollection().get(), &select); // type HTMLCollection
- case SelectDisabled: return Boolean(select.disabled());
- case SelectMultiple: return Boolean(select.multiple());
- case SelectName: return String(select.name());
- case SelectSize: return Number(select.size());
- case SelectTabIndex: return Number(select.tabIndex());
+ case SelectDisabled: return jsBoolean(select.disabled());
+ case SelectMultiple: return jsBoolean(select.multiple());
+ case SelectName: return jsString(select.name());
+ case SelectSize: return jsNumber(select.size());
+ case SelectTabIndex: return jsNumber(select.tabIndex());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::optGroupGetter(ExecState* exec, int token) const
{
HTMLOptGroupElementImpl& optgroup = *static_cast<HTMLOptGroupElementImpl*>(impl());
switch (token) {
- case OptGroupDisabled: return Boolean(optgroup.disabled());
- case OptGroupLabel: return String(optgroup.label());
+ case OptGroupDisabled: return jsBoolean(optgroup.disabled());
+ case OptGroupLabel: return jsString(optgroup.label());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::optionGetter(ExecState* exec, int token) const
@@ -1615,73 +1615,73 @@
HTMLOptionElementImpl& option = *static_cast<HTMLOptionElementImpl*>(impl());
switch (token) {
case OptionForm: return getDOMNode(exec,option.form()); // type HTMLFormElement
- case OptionDefaultSelected: return Boolean(option.defaultSelected());
- case OptionText: return String(option.text());
- case OptionIndex: return Number(option.index());
- case OptionDisabled: return Boolean(option.disabled());
- case OptionLabel: return String(option.label());
- case OptionSelected: return Boolean(option.selected());
- case OptionValue: return String(option.value());
+ case OptionDefaultSelected: return jsBoolean(option.defaultSelected());
+ case OptionText: return jsString(option.text());
+ case OptionIndex: return jsNumber(option.index());
+ case OptionDisabled: return jsBoolean(option.disabled());
+ case OptionLabel: return jsString(option.label());
+ case OptionSelected: return jsBoolean(option.selected());
+ case OptionValue: return jsString(option.value());
}
- return Undefined();
+ return jsUndefined();
}
static ValueImp *getInputSelectionStart(HTMLInputElementImpl &input)
{
if (input.canHaveSelection())
- return Number(input.selectionStart());
- return Undefined();
+ return jsNumber(input.selectionStart());
+ return jsUndefined();
}
static ValueImp *getInputSelectionEnd(HTMLInputElementImpl &input)
{
if (input.canHaveSelection())
- return Number(input.selectionEnd());
- return Undefined();
+ return jsNumber(input.selectionEnd());
+ return jsUndefined();
}
ValueImp *HTMLElement::inputGetter(ExecState* exec, int token) const
{
HTMLInputElementImpl& input = *static_cast<HTMLInputElementImpl*>(impl());
switch (token) {
- case InputDefaultValue: return String(input.defaultValue());
- case InputDefaultChecked: return Boolean(input.defaultChecked());
+ case InputDefaultValue: return jsString(input.defaultValue());
+ case InputDefaultChecked: return jsBoolean(input.defaultChecked());
case InputForm: return getDOMNode(exec,input.form()); // type HTMLFormElement
- case InputAccept: return String(input.accept());
- case InputAccessKey: return String(input.accessKey());
- case InputAlign: return String(input.align());
- case InputAlt: return String(input.alt());
- case InputChecked: return Boolean(input.checked());
- case InputDisabled: return Boolean(input.disabled());
- case InputIndeterminate: return Boolean(input.indeterminate());
- case InputMaxLength: return Number(input.maxLength());
- case InputName: return String(input.name());
- case InputReadOnly: return Boolean(input.readOnly());
+ case InputAccept: return jsString(input.accept());
+ case InputAccessKey: return jsString(input.accessKey());
+ case InputAlign: return jsString(input.align());
+ case InputAlt: return jsString(input.alt());
+ case InputChecked: return jsBoolean(input.checked());
+ case InputDisabled: return jsBoolean(input.disabled());
+ case InputIndeterminate: return jsBoolean(input.indeterminate());
+ case InputMaxLength: return jsNumber(input.maxLength());
+ case InputName: return jsString(input.name());
+ case InputReadOnly: return jsBoolean(input.readOnly());
case InputSelectionStart: return getInputSelectionStart(input);
case InputSelectionEnd: return getInputSelectionEnd(input);
- case InputSize: return Number(input.size());
- case InputSrc: return String(input.src());
- case InputTabIndex: return Number(input.tabIndex());
- case InputType: return String(input.type());
- case InputUseMap: return String(input.useMap());
- case InputValue: return String(input.value());
+ case InputSize: return jsNumber(input.size());
+ case InputSrc: return jsString(input.src());
+ case InputTabIndex: return jsNumber(input.tabIndex());
+ case InputType: return jsString(input.type());
+ case InputUseMap: return jsString(input.useMap());
+ case InputValue: return jsString(input.value());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::textAreaGetter(ExecState* exec, int token) const
{
HTMLTextAreaElementImpl& textarea = *static_cast<HTMLTextAreaElementImpl*>(impl());
switch (token) {
- case TextAreaDefaultValue: return String(textarea.defaultValue());
+ case TextAreaDefaultValue: return jsString(textarea.defaultValue());
case TextAreaForm: return getDOMNode(exec,textarea.form()); // type HTMLFormElement
- case TextAreaAccessKey: return String(textarea.accessKey());
- case TextAreaCols: return Number(textarea.cols());
- case TextAreaDisabled: return Boolean(textarea.disabled());
- case TextAreaName: return String(textarea.name());
- case TextAreaReadOnly: return Boolean(textarea.readOnly());
- case TextAreaRows: return Number(textarea.rows());
- case TextAreaSelectionStart: return Number(textarea.selectionStart());
+ case TextAreaAccessKey: return jsString(textarea.accessKey());
+ case TextAreaCols: return jsNumber(textarea.cols());
+ case TextAreaDisabled: return jsBoolean(textarea.disabled());
+ case TextAreaName: return jsString(textarea.name());
+ case TextAreaReadOnly: return jsBoolean(textarea.readOnly());
+ case TextAreaRows: return jsNumber(textarea.rows());
+ case TextAreaSelectionStart: return jsNumber(textarea.selectionStart());
case TextAreaSelectionEnd:
// FIXME (4363497): Work-around to prevent regression caused by GMail bug (4344954).
// For the love of all that is holy, let's remove this code as soon as
@@ -1689,12 +1689,12 @@
if (impl() && impl()->getDocument() && (impl()->getDocument()->domain() == "mail.google.com"))
return jsUndefined();
- return Number(textarea.selectionEnd());
- case TextAreaTabIndex: return Number(textarea.tabIndex());
- case TextAreaType: return String(textarea.type());
- case TextAreaValue: return String(textarea.value());
+ return jsNumber(textarea.selectionEnd());
+ case TextAreaTabIndex: return jsNumber(textarea.tabIndex());
+ case TextAreaType: return jsString(textarea.type());
+ case TextAreaValue: return jsString(textarea.value());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::buttonGetter(ExecState* exec, int token) const
@@ -1702,14 +1702,14 @@
HTMLButtonElementImpl& button = *static_cast<HTMLButtonElementImpl*>(impl());
switch (token) {
case ButtonForm: return getDOMNode(exec,button.form()); // type HTMLFormElement
- case ButtonAccessKey: return String(button.accessKey());
- case ButtonDisabled: return Boolean(button.disabled());
- case ButtonName: return String(button.name());
- case ButtonTabIndex: return Number(button.tabIndex());
- case ButtonType: return String(button.type());
- case ButtonValue: return String(button.value());
+ case ButtonAccessKey: return jsString(button.accessKey());
+ case ButtonDisabled: return jsBoolean(button.disabled());
+ case ButtonName: return jsString(button.name());
+ case ButtonTabIndex: return jsNumber(button.tabIndex());
+ case ButtonType: return jsString(button.type());
+ case ButtonValue: return jsString(button.value());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::labelGetter(ExecState* exec, int token) const
@@ -1717,10 +1717,10 @@
HTMLLabelElementImpl& label = *static_cast<HTMLLabelElementImpl*>(impl());
switch (token) {
case LabelForm: return getDOMNode(exec,label.form()); // type HTMLFormElement
- case LabelAccessKey: return String(label.accessKey());
- case LabelHtmlFor: return String(label.htmlFor());
+ case LabelAccessKey: return jsString(label.accessKey());
+ case LabelHtmlFor: return jsString(label.htmlFor());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::fieldSetGetter(ExecState* exec, int token) const
@@ -1728,7 +1728,7 @@
HTMLFieldSetElementImpl& fieldSet = *static_cast<HTMLFieldSetElementImpl*>(impl());
if (token == FieldSetForm)
return getDOMNode(exec,fieldSet.form()); // type HTMLFormElement
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::legendGetter(ExecState* exec, int token) const
@@ -1736,105 +1736,105 @@
HTMLLegendElementImpl& legend = *static_cast<HTMLLegendElementImpl*>(impl());
switch (token) {
case LegendForm: return getDOMNode(exec,legend.form()); // type HTMLFormElement
- case LegendAccessKey: return String(legend.accessKey());
- case LegendAlign: return String(legend.align());
+ case LegendAccessKey: return jsString(legend.accessKey());
+ case LegendAlign: return jsString(legend.align());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::uListGetter(ExecState* exec, int token) const
{
HTMLUListElementImpl& uList = *static_cast<HTMLUListElementImpl*>(impl());
switch (token) {
- case UListCompact: return Boolean(uList.compact());
- case UListType: return String(uList.type());
+ case UListCompact: return jsBoolean(uList.compact());
+ case UListType: return jsString(uList.type());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::oListGetter(ExecState* exec, int token) const
{
HTMLOListElementImpl& oList = *static_cast<HTMLOListElementImpl*>(impl());
switch (token) {
- case OListCompact: return Boolean(oList.compact());
- case OListStart: return Number(oList.start());
- case OListType: return String(oList.type());
+ case OListCompact: return jsBoolean(oList.compact());
+ case OListStart: return jsNumber(oList.start());
+ case OListType: return jsString(oList.type());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::dListGetter(ExecState* exec, int token) const
{
HTMLDListElementImpl& dList = *static_cast<HTMLDListElementImpl*>(impl());
if (token == DListCompact)
- return Boolean(dList.compact());
- return Undefined();
+ return jsBoolean(dList.compact());
+ return jsUndefined();
}
ValueImp *HTMLElement::dirGetter(ExecState* exec, int token) const
{
HTMLDirectoryElementImpl& dir = *static_cast<HTMLDirectoryElementImpl*>(impl());
if (token == DirectoryCompact)
- return Boolean(dir.compact());
- return Undefined();
+ return jsBoolean(dir.compact());
+ return jsUndefined();
}
ValueImp *HTMLElement::menuGetter(ExecState* exec, int token) const
{
HTMLMenuElementImpl& menu = *static_cast<HTMLMenuElementImpl*>(impl());
if (token == MenuCompact)
- return Boolean(menu.compact());
- return Undefined();
+ return jsBoolean(menu.compact());
+ return jsUndefined();
}
ValueImp *HTMLElement::liGetter(ExecState* exec, int token) const
{
HTMLLIElementImpl& li = *static_cast<HTMLLIElementImpl*>(impl());
switch (token) {
- case LIType: return String(li.type());
- case LIValue: return Number(li.value());
+ case LIType: return jsString(li.type());
+ case LIValue: return jsNumber(li.value());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::divGetter(ExecState* exec, int token) const
{
HTMLDivElementImpl& div = *static_cast<HTMLDivElementImpl*>(impl());
if (token == DivAlign)
- return String(div.align());
- return Undefined();
+ return jsString(div.align());
+ return jsUndefined();
}
ValueImp *HTMLElement::paragraphGetter(ExecState* exec, int token) const
{
HTMLParagraphElementImpl& p = *static_cast<HTMLParagraphElementImpl*>(impl());
if (token == ParagraphAlign)
- return String(p.align());
- return Undefined();
+ return jsString(p.align());
+ return jsUndefined();
}
ValueImp *HTMLElement::headingGetter(ExecState* exec, int token) const
{
HTMLHeadingElementImpl& h = *static_cast<HTMLHeadingElementImpl*>(impl());
if (token == HeadingAlign)
- return String(h.align());
- return Undefined();
+ return jsString(h.align());
+ return jsUndefined();
}
ValueImp *HTMLElement::blockQuoteGetter(ExecState* exec, int token) const
{
HTMLBlockquoteElementImpl& blockQuote = *static_cast<HTMLBlockquoteElementImpl*>(impl());
if (token == BlockQuoteCite)
- return String(blockQuote.cite());
- return Undefined();
+ return jsString(blockQuote.cite());
+ return jsUndefined();
}
ValueImp *HTMLElement::quoteGetter(ExecState* exec, int token) const
{
HTMLQuoteElementImpl& quote = *static_cast<HTMLQuoteElementImpl*>(impl());
if (token == QuoteCite)
- return String(quote.cite());
- return Undefined();
+ return jsString(quote.cite());
+ return jsUndefined();
}
ValueImp *HTMLElement::preGetter(ExecState* exec, int token) const
@@ -1842,122 +1842,122 @@
// FIXME: Add support for 'wrap' when white-space: pre-wrap is implemented.
HTMLPreElementImpl& pre = *static_cast<HTMLPreElementImpl*>(impl());
if (token == PreWidth)
- return Number(pre.width());
+ return jsNumber(pre.width());
if (token == PreWrap)
- return Boolean(pre.wrap());
- return Undefined();
+ return jsBoolean(pre.wrap());
+ return jsUndefined();
}
ValueImp *HTMLElement::brGetter(ExecState* exec, int token) const
{
HTMLBRElementImpl& br = *static_cast<HTMLBRElementImpl*>(impl());
if (token == BRClear)
- return String(br.clear());
- return Undefined();
+ return jsString(br.clear());
+ return jsUndefined();
}
ValueImp *HTMLElement::baseFontGetter(ExecState* exec, int token) const
{
HTMLBaseFontElementImpl& baseFont = *static_cast<HTMLBaseFontElementImpl*>(impl());
switch (token) {
- case BaseFontColor: return String(baseFont.color());
- case BaseFontFace: return String(baseFont.face());
- case BaseFontSize: return String(baseFont.size());
+ case BaseFontColor: return jsString(baseFont.color());
+ case BaseFontFace: return jsString(baseFont.face());
+ case BaseFontSize: return jsString(baseFont.size());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::fontGetter(ExecState* exec, int token) const
{
HTMLFontElementImpl& font = *static_cast<HTMLFontElementImpl*>(impl());
switch (token) {
- case FontColor: return String(font.color());
- case FontFace: return String(font.face());
- case FontSize: return String(font.size());
+ case FontColor: return jsString(font.color());
+ case FontFace: return jsString(font.face());
+ case FontSize: return jsString(font.size());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::hrGetter(ExecState* exec, int token) const
{
HTMLHRElementImpl& hr = *static_cast<HTMLHRElementImpl*>(impl());
switch (token) {
- case HRAlign: return String(hr.align());
- case HRNoShade: return Boolean(hr.noShade());
- case HRSize: return String(hr.size());
- case HRWidth: return String(hr.width());
+ case HRAlign: return jsString(hr.align());
+ case HRNoShade: return jsBoolean(hr.noShade());
+ case HRSize: return jsString(hr.size());
+ case HRWidth: return jsString(hr.width());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::modGetter(ExecState* exec, int token) const
{
HTMLModElementImpl& mod = *static_cast<HTMLModElementImpl*>(impl());
switch (token) {
- case ModCite: return String(mod.cite());
- case ModDateTime: return String(mod.dateTime());
+ case ModCite: return jsString(mod.cite());
+ case ModDateTime: return jsString(mod.dateTime());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::anchorGetter(ExecState* exec, int token) const
{
HTMLAnchorElementImpl& anchor = *static_cast<HTMLAnchorElementImpl*>(impl());
switch (token) {
- case AnchorAccessKey: return String(anchor.accessKey());
- case AnchorCharset: return String(anchor.charset());
- case AnchorCoords: return String(anchor.coords());
- case AnchorHref: return String(anchor.href());
- case AnchorHrefLang: return String(anchor.hreflang());
- case AnchorHash: return String('#'+KURL(anchor.href().qstring()).ref());
- case AnchorHost: return String(KURL(anchor.href().qstring()).host());
+ case AnchorAccessKey: return jsString(anchor.accessKey());
+ case AnchorCharset: return jsString(anchor.charset());
+ case AnchorCoords: return jsString(anchor.coords());
+ case AnchorHref: return jsString(anchor.href());
+ case AnchorHrefLang: return jsString(anchor.hreflang());
+ case AnchorHash: return jsString('#'+KURL(anchor.href().qstring()).ref());
+ case AnchorHost: return jsString(KURL(anchor.href().qstring()).host());
case AnchorHostname: {
KURL url(anchor.href().qstring());
kdDebug(6070) << "anchor::hostname uses:" <<url.url()<<endl;
if (url.port()==0)
- return String(url.host());
+ return jsString(url.host());
else
- return String(url.host() + ":" + QString::number(url.port()));
+ return jsString(url.host() + ":" + QString::number(url.port()));
}
- case AnchorPathName: return String(KURL(anchor.href().qstring()).path());
- case AnchorPort: return String(QString::number(KURL(anchor.href().qstring()).port()));
- case AnchorProtocol: return String(KURL(anchor.href().qstring()).protocol()+":");
- case AnchorSearch: return String(KURL(anchor.href().qstring()).query());
- case AnchorName: return String(anchor.name());
- case AnchorRel: return String(anchor.rel());
- case AnchorRev: return String(anchor.rev());
- case AnchorShape: return String(anchor.shape());
- case AnchorTabIndex: return Number(anchor.tabIndex());
- case AnchorTarget: return String(anchor.target());
- case AnchorType: return String(anchor.type());
+ case AnchorPathName: return jsString(KURL(anchor.href().qstring()).path());
+ case AnchorPort: return jsString(QString::number(KURL(anchor.href().qstring()).port()));
+ case AnchorProtocol: return jsString(KURL(anchor.href().qstring()).protocol()+":");
+ case AnchorSearch: return jsString(KURL(anchor.href().qstring()).query());
+ case AnchorName: return jsString(anchor.name());
+ case AnchorRel: return jsString(anchor.rel());
+ case AnchorRev: return jsString(anchor.rev());
+ case AnchorShape: return jsString(anchor.shape());
+ case AnchorTabIndex: return jsNumber(anchor.tabIndex());
+ case AnchorTarget: return jsString(anchor.target());
+ case AnchorType: return jsString(anchor.type());
case AnchorText:
if (DocumentImpl* doc = anchor.getDocument())
doc->updateLayoutIgnorePendingStylesheets();
- return String(anchor.innerText());
+ return jsString(anchor.innerText());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::imageGetter(ExecState* exec, int token) const
{
HTMLImageElementImpl& image = *static_cast<HTMLImageElementImpl*>(impl());
switch (token) {
- case ImageName: return String(image.name());
- case ImageAlign: return String(image.align());
- case ImageAlt: return String(image.alt());
- case ImageBorder: return Number(image.border());
- case ImageHeight: return Number(image.height(true));
- case ImageHspace: return Number(image.hspace());
- case ImageIsMap: return Boolean(image.isMap());
- case ImageLongDesc: return String(image.longDesc());
- case ImageSrc: return String(image.src());
- case ImageUseMap: return String(image.useMap());
- case ImageVspace: return Number(image.vspace());
- case ImageWidth: return Number(image.width(true));
- case ImageX: return Number(image.x());
- case ImageY: return Number(image.y());
+ case ImageName: return jsString(image.name());
+ case ImageAlign: return jsString(image.align());
+ case ImageAlt: return jsString(image.alt());
+ case ImageBorder: return jsNumber(image.border());
+ case ImageHeight: return jsNumber(image.height(true));
+ case ImageHspace: return jsNumber(image.hspace());
+ case ImageIsMap: return jsBoolean(image.isMap());
+ case ImageLongDesc: return jsString(image.longDesc());
+ case ImageSrc: return jsString(image.src());
+ case ImageUseMap: return jsString(image.useMap());
+ case ImageVspace: return jsNumber(image.vspace());
+ case ImageWidth: return jsNumber(image.width(true));
+ case ImageX: return jsNumber(image.x());
+ case ImageY: return jsNumber(image.y());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::objectGetter(ExecState* exec, int token) const
@@ -1965,58 +1965,58 @@
HTMLObjectElementImpl& object = *static_cast<HTMLObjectElementImpl*>(impl());
switch (token) {
case ObjectForm: return getDOMNode(exec,object.form()); // type HTMLFormElement
- case ObjectCode: return String(object.code());
- case ObjectAlign: return String(object.align());
- case ObjectArchive: return String(object.archive());
- case ObjectBorder: return String(object.border());
- case ObjectCodeBase: return String(object.codeBase());
- case ObjectCodeType: return String(object.codeType());
+ case ObjectCode: return jsString(object.code());
+ case ObjectAlign: return jsString(object.align());
+ case ObjectArchive: return jsString(object.archive());
+ case ObjectBorder: return jsString(object.border());
+ case ObjectCodeBase: return jsString(object.codeBase());
+ case ObjectCodeType: return jsString(object.codeType());
case ObjectContentDocument: return checkNodeSecurity(exec,object.contentDocument()) ?
- getDOMNode(exec, object.contentDocument()) : Undefined();
- case ObjectData: return String(object.data());
- case ObjectDeclare: return Boolean(object.declare());
- case ObjectHeight: return String(object.height());
- case ObjectHspace: return String(object.hspace());
- case ObjectName: return String(object.name());
- case ObjectStandby: return String(object.standby());
- case ObjectTabIndex: return Number(object.tabIndex());
- case ObjectType: return String(object.type());
- case ObjectUseMap: return String(object.useMap());
- case ObjectVspace: return String(object.vspace());
- case ObjectWidth: return String(object.width());
+ getDOMNode(exec, object.contentDocument()) : jsUndefined();
+ case ObjectData: return jsString(object.data());
+ case ObjectDeclare: return jsBoolean(object.declare());
+ case ObjectHeight: return jsString(object.height());
+ case ObjectHspace: return jsString(object.hspace());
+ case ObjectName: return jsString(object.name());
+ case ObjectStandby: return jsString(object.standby());
+ case ObjectTabIndex: return jsNumber(object.tabIndex());
+ case ObjectType: return jsString(object.type());
+ case ObjectUseMap: return jsString(object.useMap());
+ case ObjectVspace: return jsString(object.vspace());
+ case ObjectWidth: return jsString(object.width());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::paramGetter(ExecState* exec, int token) const
{
HTMLParamElementImpl& param = *static_cast<HTMLParamElementImpl*>(impl());
switch (token) {
- case ParamName: return String(param.name());
- case ParamType: return String(param.type());
- case ParamValue: return String(param.value());
- case ParamValueType: return String(param.valueType());
+ case ParamName: return jsString(param.name());
+ case ParamType: return jsString(param.type());
+ case ParamValue: return jsString(param.value());
+ case ParamValueType: return jsString(param.valueType());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::appletGetter(ExecState* exec, int token) const
{
HTMLAppletElementImpl& applet = *static_cast<HTMLAppletElementImpl*>(impl());
switch (token) {
- case AppletAlign: return String(applet.align());
- case AppletAlt: return String(applet.alt());
- case AppletArchive: return String(applet.archive());
- case AppletCode: return String(applet.code());
- case AppletCodeBase: return String(applet.codeBase());
- case AppletHeight: return String(applet.height());
- case AppletHspace: return String(applet.hspace());
- case AppletName: return String(applet.name());
- case AppletObject: return String(applet.object());
- case AppletVspace: return String(applet.vspace());
- case AppletWidth: return String(applet.width());
+ case AppletAlign: return jsString(applet.align());
+ case AppletAlt: return jsString(applet.alt());
+ case AppletArchive: return jsString(applet.archive());
+ case AppletCode: return jsString(applet.code());
+ case AppletCodeBase: return jsString(applet.codeBase());
+ case AppletHeight: return jsString(applet.height());
+ case AppletHspace: return jsString(applet.hspace());
+ case AppletName: return jsString(applet.name());
+ case AppletObject: return jsString(applet.object());
+ case AppletVspace: return jsString(applet.vspace());
+ case AppletWidth: return jsString(applet.width());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::mapGetter(ExecState* exec, int token) const
@@ -2024,54 +2024,54 @@
HTMLMapElementImpl& map = *static_cast<HTMLMapElementImpl*>(impl());
switch (token) {
case MapAreas: return getHTMLCollection(exec, map.areas().get()); // type HTMLCollection
- case MapName: return String(map.name());
+ case MapName: return jsString(map.name());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::areaGetter(ExecState* exec, int token) const
{
HTMLAreaElementImpl& area = *static_cast<HTMLAreaElementImpl*>(impl());
switch (token) {
- case AreaAccessKey: return String(area.accessKey());
- case AreaAlt: return String(area.alt());
- case AreaCoords: return String(area.coords());
- case AreaHref: return String(area.href());
- case AreaHash: return String('#'+KURL(area.href().qstring()).ref());
- case AreaHost: return String(KURL(area.href().qstring()).host());
+ case AreaAccessKey: return jsString(area.accessKey());
+ case AreaAlt: return jsString(area.alt());
+ case AreaCoords: return jsString(area.coords());
+ case AreaHref: return jsString(area.href());
+ case AreaHash: return jsString('#'+KURL(area.href().qstring()).ref());
+ case AreaHost: return jsString(KURL(area.href().qstring()).host());
case AreaHostName: {
KURL url(area.href().qstring());
kdDebug(6070) << "link::hostname uses:" <<url.url()<<endl;
if (url.port()==0)
- return String(url.host());
+ return jsString(url.host());
else
- return String(url.host() + ":" + QString::number(url.port()));
+ return jsString(url.host() + ":" + QString::number(url.port()));
}
- case AreaPathName: return String(KURL(area.href().qstring()).path());
- case AreaPort: return String(QString::number(KURL(area.href().qstring()).port()));
- case AreaProtocol: return String(KURL(area.href().qstring()).protocol()+":");
- case AreaSearch: return String(KURL(area.href().qstring()).query());
- case AreaNoHref: return Boolean(area.noHref());
- case AreaShape: return String(area.shape());
- case AreaTabIndex: return Number(area.tabIndex());
- case AreaTarget: return String(area.target());
+ case AreaPathName: return jsString(KURL(area.href().qstring()).path());
+ case AreaPort: return jsString(QString::number(KURL(area.href().qstring()).port()));
+ case AreaProtocol: return jsString(KURL(area.href().qstring()).protocol()+":");
+ case AreaSearch: return jsString(KURL(area.href().qstring()).query());
+ case AreaNoHref: return jsBoolean(area.noHref());
+ case AreaShape: return jsString(area.shape());
+ case AreaTabIndex: return jsNumber(area.tabIndex());
+ case AreaTarget: return jsString(area.target());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::scriptGetter(ExecState* exec, int token) const
{
HTMLScriptElementImpl& script = *static_cast<HTMLScriptElementImpl*>(impl());
switch (token) {
- case ScriptText: return String(script.text());
- case ScriptHtmlFor: return String(script.htmlFor());
- case ScriptEvent: return String(script.event());
- case ScriptCharset: return String(script.charset());
- case ScriptDefer: return Boolean(script.defer());
- case ScriptSrc: return String(script.src());
- case ScriptType: return String(script.type());
+ case ScriptText: return jsString(script.text());
+ case ScriptHtmlFor: return jsString(script.htmlFor());
+ case ScriptEvent: return jsString(script.event());
+ case ScriptCharset: return jsString(script.charset());
+ case ScriptDefer: return jsBoolean(script.defer());
+ case ScriptSrc: return jsString(script.src());
+ case ScriptType: return jsString(script.type());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::tableGetter(ExecState* exec, int token) const
@@ -2083,101 +2083,101 @@
case TableTFoot: return getDOMNode(exec,table.tFoot()); // type HTMLTableSectionElement
case TableRows: return getHTMLCollection(exec, table.rows().get()); // type HTMLCollection
case TableTBodies: return getHTMLCollection(exec, table.tBodies().get()); // type HTMLCollection
- case TableAlign: return String(table.align());
- case TableBgColor: return String(table.bgColor());
- case TableBorder: return String(table.border());
- case TableCellPadding: return String(table.cellPadding());
- case TableCellSpacing: return String(table.cellSpacing());
- case TableFrame: return String(table.frame());
- case TableRules: return String(table.rules());
- case TableSummary: return String(table.summary());
- case TableWidth: return String(table.width());
+ case TableAlign: return jsString(table.align());
+ case TableBgColor: return jsString(table.bgColor());
+ case TableBorder: return jsString(table.border());
+ case TableCellPadding: return jsString(table.cellPadding());
+ case TableCellSpacing: return jsString(table.cellSpacing());
+ case TableFrame: return jsString(table.frame());
+ case TableRules: return jsString(table.rules());
+ case TableSummary: return jsString(table.summary());
+ case TableWidth: return jsString(table.width());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::tableCaptionGetter(ExecState* exec, int token) const
{
HTMLTableCaptionElementImpl& tableCaption = *static_cast<HTMLTableCaptionElementImpl*>(impl());
if (token == TableCaptionAlign)
- return String(tableCaption.align());
- return Undefined();
+ return jsString(tableCaption.align());
+ return jsUndefined();
}
ValueImp *HTMLElement::tableColGetter(ExecState* exec, int token) const
{
HTMLTableColElementImpl& tableCol = *static_cast<HTMLTableColElementImpl*>(impl());
switch (token) {
- case TableColAlign: return String(tableCol.align());
- case TableColCh: return String(tableCol.ch());
- case TableColChOff: return String(tableCol.chOff());
- case TableColSpan: return Number(tableCol.span());
- case TableColVAlign: return String(tableCol.vAlign());
- case TableColWidth: return String(tableCol.width());
+ case TableColAlign: return jsString(tableCol.align());
+ case TableColCh: return jsString(tableCol.ch());
+ case TableColChOff: return jsString(tableCol.chOff());
+ case TableColSpan: return jsNumber(tableCol.span());
+ case TableColVAlign: return jsString(tableCol.vAlign());
+ case TableColWidth: return jsString(tableCol.width());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::tableSectionGetter(ExecState* exec, int token) const
{
HTMLTableSectionElementImpl& tableSection = *static_cast<HTMLTableSectionElementImpl*>(impl());
switch (token) {
- case TableSectionAlign: return String(tableSection.align());
- case TableSectionCh: return String(tableSection.ch());
- case TableSectionChOff: return String(tableSection.chOff());
- case TableSectionVAlign: return String(tableSection.vAlign());
+ case TableSectionAlign: return jsString(tableSection.align());
+ case TableSectionCh: return jsString(tableSection.ch());
+ case TableSectionChOff: return jsString(tableSection.chOff());
+ case TableSectionVAlign: return jsString(tableSection.vAlign());
case TableSectionRows: return getHTMLCollection(exec, tableSection.rows().get()); // type HTMLCollection
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::tableRowGetter(ExecState* exec, int token) const
{
HTMLTableRowElementImpl& tableRow = *static_cast<HTMLTableRowElementImpl*>(impl());
switch (token) {
- case TableRowRowIndex: return Number(tableRow.rowIndex());
- case TableRowSectionRowIndex: return Number(tableRow.sectionRowIndex());
+ case TableRowRowIndex: return jsNumber(tableRow.rowIndex());
+ case TableRowSectionRowIndex: return jsNumber(tableRow.sectionRowIndex());
case TableRowCells: return getHTMLCollection(exec, tableRow.cells().get()); // type HTMLCollection
- case TableRowAlign: return String(tableRow.align());
- case TableRowBgColor: return String(tableRow.bgColor());
- case TableRowCh: return String(tableRow.ch());
- case TableRowChOff: return String(tableRow.chOff());
- case TableRowVAlign: return String(tableRow.vAlign());
+ case TableRowAlign: return jsString(tableRow.align());
+ case TableRowBgColor: return jsString(tableRow.bgColor());
+ case TableRowCh: return jsString(tableRow.ch());
+ case TableRowChOff: return jsString(tableRow.chOff());
+ case TableRowVAlign: return jsString(tableRow.vAlign());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::tableCellGetter(ExecState* exec, int token) const
{
HTMLTableCellElementImpl& tableCell = *static_cast<HTMLTableCellElementImpl*>(impl());
switch (token) {
- case TableCellCellIndex: return Number(tableCell.cellIndex());
- case TableCellAbbr: return String(tableCell.abbr());
- case TableCellAlign: return String(tableCell.align());
- case TableCellAxis: return String(tableCell.axis());
- case TableCellBgColor: return String(tableCell.bgColor());
- case TableCellCh: return String(tableCell.ch());
- case TableCellChOff: return String(tableCell.chOff());
- case TableCellColSpan: return Number(tableCell.colSpan());
- case TableCellHeaders: return String(tableCell.headers());
- case TableCellHeight: return String(tableCell.height());
- case TableCellNoWrap: return Boolean(tableCell.noWrap());
- case TableCellRowSpan: return Number(tableCell.rowSpan());
- case TableCellScope: return String(tableCell.scope());
- case TableCellVAlign: return String(tableCell.vAlign());
- case TableCellWidth: return String(tableCell.width());
+ case TableCellCellIndex: return jsNumber(tableCell.cellIndex());
+ case TableCellAbbr: return jsString(tableCell.abbr());
+ case TableCellAlign: return jsString(tableCell.align());
+ case TableCellAxis: return jsString(tableCell.axis());
+ case TableCellBgColor: return jsString(tableCell.bgColor());
+ case TableCellCh: return jsString(tableCell.ch());
+ case TableCellChOff: return jsString(tableCell.chOff());
+ case TableCellColSpan: return jsNumber(tableCell.colSpan());
+ case TableCellHeaders: return jsString(tableCell.headers());
+ case TableCellHeight: return jsString(tableCell.height());
+ case TableCellNoWrap: return jsBoolean(tableCell.noWrap());
+ case TableCellRowSpan: return jsNumber(tableCell.rowSpan());
+ case TableCellScope: return jsString(tableCell.scope());
+ case TableCellVAlign: return jsString(tableCell.vAlign());
+ case TableCellWidth: return jsString(tableCell.width());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::frameSetGetter(ExecState* exec, int token) const
{
HTMLFrameSetElementImpl& frameSet = *static_cast<HTMLFrameSetElementImpl*>(impl());
switch (token) {
- case FrameSetCols: return String(frameSet.cols());
- case FrameSetRows: return String(frameSet.rows());
+ case FrameSetCols: return jsString(frameSet.cols());
+ case FrameSetRows: return jsString(frameSet.rows());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::frameGetter(ExecState* exec, int token) const
@@ -2185,52 +2185,52 @@
HTMLFrameElementImpl& frameElement = *static_cast<HTMLFrameElementImpl*>(impl());
switch (token) {
case FrameContentDocument: return checkNodeSecurity(exec,frameElement.contentDocument()) ?
- getDOMNode(exec, frameElement.contentDocument()) : Undefined();
+ getDOMNode(exec, frameElement.contentDocument()) : jsUndefined();
case FrameContentWindow: return checkNodeSecurity(exec,frameElement.contentDocument())
? Window::retrieve(frameElement.contentPart())
- : Undefined();
- case FrameFrameBorder: return String(frameElement.frameBorder());
- case FrameLongDesc: return String(frameElement.longDesc());
- case FrameMarginHeight: return String(frameElement.marginHeight());
- case FrameMarginWidth: return String(frameElement.marginWidth());
- case FrameName: return String(frameElement.name());
- case FrameNoResize: return Boolean(frameElement.noResize());
- case FrameScrolling: return String(frameElement.scrolling());
+ : jsUndefined();
+ case FrameFrameBorder: return jsString(frameElement.frameBorder());
+ case FrameLongDesc: return jsString(frameElement.longDesc());
+ case FrameMarginHeight: return jsString(frameElement.marginHeight());
+ case FrameMarginWidth: return jsString(frameElement.marginWidth());
+ case FrameName: return jsString(frameElement.name());
+ case FrameNoResize: return jsBoolean(frameElement.noResize());
+ case FrameScrolling: return jsString(frameElement.scrolling());
case FrameSrc:
- case FrameLocation: return String(frameElement.src());
+ case FrameLocation: return jsString(frameElement.src());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::iFrameGetter(ExecState* exec, int token) const
{
HTMLIFrameElementImpl& iFrame = *static_cast<HTMLIFrameElementImpl*>(impl());
switch (token) {
- case IFrameAlign: return String(iFrame.align());
+ case IFrameAlign: return jsString(iFrame.align());
// ### security check ?
case IFrameDocument: // non-standard, mapped to contentDocument
case IFrameContentDocument: return checkNodeSecurity(exec,iFrame.contentDocument()) ?
- getDOMNode(exec, iFrame.contentDocument()) : Undefined();
+ getDOMNode(exec, iFrame.contentDocument()) : jsUndefined();
case IFrameContentWindow: return checkNodeSecurity(exec,iFrame.contentDocument())
? Window::retrieve(iFrame.contentPart())
- : Undefined();
- case IFrameFrameBorder: return String(iFrame.frameBorder());
- case IFrameHeight: return String(iFrame.height());
- case IFrameLongDesc: return String(iFrame.longDesc());
- case IFrameMarginHeight: return String(iFrame.marginHeight());
- case IFrameMarginWidth: return String(iFrame.marginWidth());
- case IFrameName: return String(iFrame.name());
- case IFrameScrolling: return String(iFrame.scrolling());
- case IFrameSrc: return String(iFrame.src());
- case IFrameWidth: return String(iFrame.width());
+ : jsUndefined();
+ case IFrameFrameBorder: return jsString(iFrame.frameBorder());
+ case IFrameHeight: return jsString(iFrame.height());
+ case IFrameLongDesc: return jsString(iFrame.longDesc());
+ case IFrameMarginHeight: return jsString(iFrame.marginHeight());
+ case IFrameMarginWidth: return jsString(iFrame.marginWidth());
+ case IFrameName: return jsString(iFrame.name());
+ case IFrameScrolling: return jsString(iFrame.scrolling());
+ case IFrameSrc: return jsString(iFrame.src());
+ case IFrameWidth: return jsString(iFrame.width());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::marqueeGetter(ExecState* exec, int token) const
{
// FIXME: Find out what WinIE exposes as properties and implement this.
- return Undefined();
+ return jsUndefined();
}
ValueImp *HTMLElement::getValueProperty(ExecState *exec, int token) const
@@ -2239,42 +2239,42 @@
HTMLElementImpl &element = *static_cast<HTMLElementImpl *>(impl());
switch (token) {
case ElementId:
- // iht.com relies on this value being "" when no id is present. Other browsers do this as well.
- // So we use String() instead of String() here.
- return String(element.id());
+ // iht.com relies on this value being "" when no id is present. Other browsers do this as well.
+ // So we use jsString() instead of jsStringOrNull() here.
+ return jsString(element.id());
case ElementTitle:
- return String(element.title());
+ return jsString(element.title());
case ElementLang:
- return String(element.lang());
+ return jsString(element.lang());
case ElementDir:
- return String(element.dir());
+ return jsString(element.dir());
case ElementClassName:
- return String(element.className());
+ return jsString(element.className());
case ElementInnerHTML:
- return String(element.innerHTML());
+ return jsString(element.innerHTML());
case ElementInnerText:
if (DocumentImpl* doc = impl()->getDocument())
doc->updateLayoutIgnorePendingStylesheets();
- return String(element.innerText());
+ return jsString(element.innerText());
case ElementOuterHTML:
- return String(element.outerHTML());
+ return jsString(element.outerHTML());
case ElementOuterText:
- return String(element.outerText());
+ return jsString(element.outerText());
case ElementDocument:
return getDOMNode(exec,element.ownerDocument());
case ElementChildren:
return getHTMLCollection(exec, element.children().get());
case ElementContentEditable:
- return String(element.contentEditable());
+ return jsString(element.contentEditable());
case ElementIsContentEditable:
- return Boolean(element.isContentEditable());
+ return jsBoolean(element.isContentEditable());
}
// Now check the properties specific to our element type.
const Accessors* info = getSetInfo();
if (info && info->m_getter)
return (this->*(info->m_getter))(exec, token);
- return Undefined();
+ return jsUndefined();
}
UString KJS::HTMLElement::toString(ExecState *exec) const
@@ -2328,7 +2328,7 @@
HTMLElementFunction::HTMLElementFunction(ExecState *exec, int i, int len)
: DOMFunction(), id(i)
{
- put(exec,lengthPropertyName,Number(len),DontDelete|ReadOnly|DontEnum);
+ put(exec,lengthPropertyName,jsNumber(len),DontDelete|ReadOnly|DontEnum);
}
ValueImp *KJS::HTMLElementFunction::callAsFunction(ExecState *exec, ObjectImp *thisObj, const List &args)
@@ -2343,111 +2343,111 @@
HTMLFormElementImpl &form = static_cast<HTMLFormElementImpl &>(element);
if (id == KJS::HTMLElement::FormSubmit) {
form.submit();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::FormReset) {
form.reset();
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(selectTag)) {
HTMLSelectElementImpl &select = static_cast<HTMLSelectElementImpl &>(element);
if (id == KJS::HTMLElement::SelectAdd) {
select.add(toHTMLElement(args[0]), toHTMLElement(args[1]), exception);
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::SelectRemove) {
select.remove(int(args[0]->toNumber(exec)));
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::SelectBlur) {
select.blur();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::SelectFocus) {
select.focus();
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(inputTag)) {
HTMLInputElementImpl &input = static_cast<HTMLInputElementImpl &>(element);
if (id == KJS::HTMLElement::InputBlur) {
input.blur();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::InputFocus) {
input.focus();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::InputSelect) {
input.select();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::InputClick) {
input.click();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::InputSetSelectionRange) {
input.setSelectionRange(args[0]->toInt32(exec), args[1]->toInt32(exec));
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(buttonTag)) {
HTMLButtonElementImpl &button = static_cast<HTMLButtonElementImpl &>(element);
if (id == KJS::HTMLElement::ButtonBlur) {
button.blur();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::ButtonFocus) {
button.focus();
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(labelTag)) {
HTMLLabelElementImpl &label = static_cast<HTMLLabelElementImpl &>(element);
if (id == KJS::HTMLElement::LabelFocus) {
label.focus();
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(legendTag)) {
HTMLLegendElementImpl &legend = static_cast<HTMLLegendElementImpl &>(element);
if (id == KJS::HTMLElement::LegendFocus) {
legend.focus();
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(textareaTag)) {
HTMLTextAreaElementImpl &textarea = static_cast<HTMLTextAreaElementImpl &>(element);
if (id == KJS::HTMLElement::TextAreaBlur) {
textarea.blur();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::TextAreaFocus) {
textarea.focus();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::TextAreaSelect) {
textarea.select();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::TextAreaSetSelectionRange) {
textarea.setSelectionRange(args[0]->toInt32(exec), args[1]->toInt32(exec));
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(aTag)) {
HTMLAnchorElementImpl &anchor = static_cast<HTMLAnchorElementImpl &>(element);
if (id == KJS::HTMLElement::AnchorBlur) {
anchor.blur();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::AnchorFocus) {
anchor.focus();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::AnchorToString)
- return String(thisObj->toString(exec));
+ return jsString(thisObj->toString(exec));
}
else if (element.hasLocalName(tableTag)) {
HTMLTableElementImpl &table = static_cast<HTMLTableElementImpl &>(element);
@@ -2455,25 +2455,25 @@
return getDOMNode(exec,table.createTHead());
else if (id == KJS::HTMLElement::TableDeleteTHead) {
table.deleteTHead();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::TableCreateTFoot)
return getDOMNode(exec,table.createTFoot());
else if (id == KJS::HTMLElement::TableDeleteTFoot) {
table.deleteTFoot();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::TableCreateCaption)
return getDOMNode(exec,table.createCaption());
else if (id == KJS::HTMLElement::TableDeleteCaption) {
table.deleteCaption();
- return Undefined();
+ return jsUndefined();
}
else if (id == KJS::HTMLElement::TableInsertRow)
return getDOMNode(exec,table.insertRow(args[0]->toInt32(exec), exception));
else if (id == KJS::HTMLElement::TableDeleteRow) {
table.deleteRow(args[0]->toInt32(exec), exception);
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(theadTag) ||
@@ -2484,7 +2484,7 @@
return getDOMNode(exec, tableSection.insertRow(args[0]->toInt32(exec), exception));
else if (id == KJS::HTMLElement::TableSectionDeleteRow) {
tableSection.deleteRow(args[0]->toInt32(exec), exception);
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(trTag)) {
@@ -2493,7 +2493,7 @@
return getDOMNode(exec,tableRow.insertCell(args[0]->toInt32(exec), exception));
else if (id == KJS::HTMLElement::TableRowDeleteCell) {
tableRow.deleteCell(args[0]->toInt32(exec), exception);
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(marqueeTag)) {
@@ -2501,13 +2501,13 @@
element.renderer()->layer() &&
element.renderer()->layer()->marquee()) {
element.renderer()->layer()->marquee()->start();
- return Undefined();
+ return jsUndefined();
}
if (id == KJS::HTMLElement::MarqueeStop && element.renderer() &&
element.renderer()->layer() &&
element.renderer()->layer()->marquee()) {
element.renderer()->layer()->marquee()->stop();
- return Undefined();
+ return jsUndefined();
}
}
else if (element.hasLocalName(canvasTag)) {
@@ -2515,11 +2515,11 @@
if (args.size() == 0 || (args.size() == 1 && args[0]->toString(exec).qstring().lower() == "2d")) {
return new Context2D(&element);
}
- return Undefined();
+ return jsUndefined();
}
}
- return Undefined();
+ return jsUndefined();
}
void KJS::HTMLElement::put(ExecState *exec, const Identifier &propertyName, ValueImp *value, int attr)
@@ -3323,7 +3323,7 @@
ValueImp *HTMLCollection::lengthGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
{
HTMLCollection *thisObj = static_cast<HTMLCollection *>(slot.slotBase());
- return Number(thisObj->m_impl->length());
+ return jsNumber(thisObj->m_impl->length());
}
ValueImp *HTMLCollection::indexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -3402,7 +3402,7 @@
}
}
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *KJS::HTMLCollection::getNamedItems(ExecState *exec, const Identifier &propertyName) const
@@ -3418,7 +3418,7 @@
#ifdef KJS_VERBOSE
kdDebug(6070) << "not found" << endl;
#endif
- return Undefined();
+ return jsUndefined();
}
if (namedItems.count() == 1)
@@ -3441,7 +3441,7 @@
case KJS::HTMLCollection::NamedItem:
return static_cast<HTMLCollection *>(thisObj)->getNamedItems(exec, Identifier(args[0]->toString(exec)));
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -3455,14 +3455,14 @@
ValueImp *HTMLSelectCollection::selectedIndexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
{
HTMLSelectCollection *thisObj = static_cast<HTMLSelectCollection *>(slot.slotBase());
- return Number(thisObj->m_element->selectedIndex());
+ return jsNumber(thisObj->m_element->selectedIndex());
}
bool HTMLSelectCollection::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
{
if (propertyName == "selectedIndex") {
slot.setCustom(this, selectedIndexGetter);
- //result = Number(m_element->selectedIndex());
+ //result = jsNumber(m_element->selectedIndex());
return true;
}
@@ -3560,7 +3560,7 @@
// no. of arguments for constructor
// ## is 4 correct ? 0 to 4, it seems to be
- put(exec,lengthPropertyName, Number(4), ReadOnly|DontDelete|DontEnum);
+ put(exec,lengthPropertyName, jsNumber(4), ReadOnly|DontDelete|DontEnum);
}
bool OptionConstructorImp::implementsConstruct() const
@@ -3650,34 +3650,34 @@
case Src:
return jsString(doc ? doc->completeURL(src.domString()) : src);
case Complete:
- return Boolean(!img || img->status() >= khtml::CachedObject::Persistent);
+ return jsBoolean(!img || img->status() >= khtml::CachedObject::Persistent);
case OnLoad:
if (onLoadListener && onLoadListener->listenerObjImp()) {
return onLoadListener->listenerObj();
} else {
- return Null();
+ return jsNull();
}
case Width: {
if (widthSet)
- return Number(width);
+ return jsNumber(width);
int w = 0;
if (img) {
QSize size = img->pixmap_size();
if (size.isValid())
w = size.width();
}
- return Number(w);
+ return jsNumber(w);
}
case Height: {
if (heightSet)
- return Number(height);
+ return jsNumber(height);
int h = 0;
if (img) {
QSize size = img->pixmap_size();
if (size.isValid())
h = size.height();
}
- return Number(h);
+ return jsNumber(h);
}
default:
kdWarning() << "Image::getValueProperty unhandled token " << token << endl;
@@ -3771,11 +3771,11 @@
Context2D *contextObject = static_cast<KJS::Context2D *>(thisObj);
khtml::RenderCanvasImage *renderer = static_cast<khtml::RenderCanvasImage*>(contextObject->_element->renderer());
if (!renderer)
- return Undefined();
+ return jsUndefined();
CGContextRef drawingContext = renderer->drawingContext();
if (!drawingContext)
- return Undefined();
+ return jsUndefined();
switch (id) {
case Context2D::Save: {
@@ -4284,7 +4284,7 @@
}
else {
// No image.
- return Undefined();
+ return jsUndefined();
}
w = pixmap.width();
h = pixmap.height();
@@ -4302,7 +4302,7 @@
khtml::RenderCanvasImage *renderer = static_cast<khtml::RenderCanvasImage*>(e->renderer());
if (!renderer) {
// No renderer, nothing to draw.
- return Undefined();
+ return jsUndefined();
}
sourceContext = renderer->drawingContext();
@@ -4472,7 +4472,7 @@
}
}
- return Undefined();
+ return jsUndefined();
}
const ClassInfo Context2D::info = { "Context2D", 0, &Context2DTable, 0 };
@@ -4590,7 +4590,7 @@
}
}
- return Undefined();
+ return jsUndefined();
}
void Context2D::put(ExecState *exec, const Identifier &propertyName, ValueImp *value, int attr)
@@ -4883,21 +4883,21 @@
_globalAlpha(jsUndefined()),
_globalComposite(jsUndefined())
{
- _lineWidth = Number (1.);
- _strokeStyle = String ("black");
- _fillStyle = String ("black");
+ _lineWidth = jsNumber(1);
+ _strokeStyle = jsString("black");
+ _fillStyle = jsString("black");
- _lineCap = String("butt");
- _lineJoin = String("miter");
- _miterLimit = Number(10.0);
+ _lineCap = jsString("butt");
+ _lineJoin = jsString("miter");
+ _miterLimit = jsNumber(10);
- _shadowOffsetX = Number(0.);
- _shadowOffsetY = Number(0.);
- _shadowBlur = Number(0.);
- _shadowColor = String("black");
+ _shadowOffsetX = jsNumber(0);
+ _shadowOffsetY = jsNumber(0);
+ _shadowBlur = jsNumber(0);
+ _shadowColor = jsString("black");
- _globalAlpha = Number(1.);
- _globalComposite = String("source-over");
+ _globalAlpha = jsNumber(1);
+ _globalComposite = jsString("source-over");
stateStack.setAutoDelete(true);
}
@@ -4995,7 +4995,7 @@
}
}
- return Undefined();
+ return jsUndefined();
}
void gradientCallback (void *info, const float *in, float *out)
@@ -5096,7 +5096,7 @@
ValueImp *Gradient::getValueProperty(ExecState *, int token) const
{
- return Undefined();
+ return jsUndefined();
}
void Gradient::put(ExecState *exec, const Identifier &propertyName, ValueImp *value, int attr)
@@ -5292,7 +5292,7 @@
ValueImp *ImagePattern::getValueProperty(ExecState *, int token) const
{
- return Undefined();
+ return jsUndefined();
}
void ImagePattern::put(ExecState *exec, const Identifier &propertyName, ValueImp *value, int attr)
@@ -5316,7 +5316,7 @@
{
DOMObject *ret;
if (!c)
- return Null();
+ return jsNull();
ScriptInterpreter* interp = static_cast<ScriptInterpreter *>(exec->dynamicInterpreter());
if ((ret = interp->getDOMObject(c)))
return ret;
1.38 +32 -32 WebCore/khtml/ecma/kjs_navigator.cpp
Index: kjs_navigator.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_navigator.cpp,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- kjs_navigator.cpp 21 Nov 2005 01:19:56 -0000 1.37
+++ kjs_navigator.cpp 11 Dec 2005 00:38:02 -0000 1.38
@@ -171,58 +171,58 @@
QString userAgent = KWQ(m_part)->userAgent();
switch (token) {
case AppCodeName:
- return String("Mozilla");
+ return jsString("Mozilla");
case AppName:
// If we find "Mozilla" but not "(compatible, ...)" we are a real Netscape
if (userAgent.find(QString::fromLatin1("Mozilla")) >= 0 &&
userAgent.find(QString::fromLatin1("compatible")) == -1)
{
//kdDebug() << "appName -> Mozilla" << endl;
- return String("Netscape");
+ return jsString("Netscape");
}
if (userAgent.find(QString::fromLatin1("Microsoft")) >= 0 ||
userAgent.find(QString::fromLatin1("MSIE")) >= 0)
{
//kdDebug() << "appName -> IE" << endl;
- return String("Microsoft Internet Explorer");
+ return jsString("Microsoft Internet Explorer");
}
// FIXME: Should we define a fallback result here besides "Konqueror"?
- return Undefined();
+ return jsUndefined();
case AppVersion:
// We assume the string is something like Mozilla/version (properties)
- return String(userAgent.mid(userAgent.find('/') + 1));
+ return jsString(userAgent.mid(userAgent.find('/') + 1));
case Product:
// When acting normal, we pretend to be "Gecko".
if (userAgent.find("Mozilla/5.0") >= 0 && userAgent.find("compatible") == -1) {
- return String("Gecko");
+ return jsString("Gecko");
}
- // When spoofing as IE, we use Undefined().
- return Undefined();
+ // When spoofing as IE, we use jsUndefined().
+ return jsUndefined();
case ProductSub:
- return String("20030107");
+ return jsString("20030107");
case Vendor:
- return String("Apple Computer, Inc.");
+ return jsString("Apple Computer, Inc.");
case Language:
// We don't have an implementation of KGlobal::locale(). We do however
// have a static method on KLocale to access the current language.
- return String(KLocale::language());
+ return jsString(KLocale::language());
case UserAgent:
- return String(userAgent);
+ return jsString(userAgent);
case Platform:
// yet another evil hack, but necessary to spoof some sites...
if ( (userAgent.find(QString::fromLatin1("Win"),0,false)>=0) )
- return String(QString::fromLatin1("Win32"));
+ return jsString(QString::fromLatin1("Win32"));
else if ( (userAgent.find(QString::fromLatin1("Macintosh"),0,false)>=0) ||
(userAgent.find(QString::fromLatin1("Mac_PowerPC"),0,false)>=0) )
- return String(QString::fromLatin1("MacPPC"));
+ return jsString(QString::fromLatin1("MacPPC"));
else
- return String(QString::fromLatin1("X11"));
+ return jsString(QString::fromLatin1("X11"));
case _Plugins:
return new Plugins(exec);
case _MimeTypes:
return new MimeTypes(exec);
case CookieEnabled:
- return Boolean(KWQKCookieJar::cookieEnabled());
+ return jsBoolean(KWQKCookieJar::cookieEnabled());
default:
kdWarning() << "Unhandled token in DOMEvent::getValueProperty : " << token << endl;
return NULL;
@@ -334,7 +334,7 @@
ValueImp *Plugins::getValueProperty(ExecState *exec, int token) const
{
assert(token == Length);
- return Number(plugins->count());
+ return jsNumber(plugins->count());
}
ValueImp *Plugins::indexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -349,7 +349,7 @@
return new Plugin(exec, pl);
}
}
- return Undefined();
+ return jsUndefined();
}
bool Plugins::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -393,7 +393,7 @@
ValueImp *MimeTypes::getValueProperty(ExecState *exec, int token) const
{
assert(token == Length);
- return Number(plugins->count());
+ return jsNumber(plugins->count());
}
ValueImp *MimeTypes::indexGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -407,7 +407,7 @@
if (m->type == propertyName.qstring())
return new MimeType(exec, m);
}
- return Undefined();
+ return jsUndefined();
}
bool MimeTypes::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -453,16 +453,16 @@
{
switch (token) {
case Name:
- return String(m_info->name);
+ return jsString(m_info->name);
case Filename:
- return String(m_info->file);
+ return jsString(m_info->file);
case Description:
- return String(m_info->desc);
+ return jsString(m_info->desc);
case Length:
- return Number(m_info->mimes.count());
+ return jsNumber(m_info->mimes.count());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -479,7 +479,7 @@
if (m->type == propertyName.qstring())
return new MimeType(exec, m);
}
- return Undefined();
+ return jsUndefined();
}
@@ -525,15 +525,15 @@
{
switch (token) {
case Type:
- return String(m_info->type);
+ return jsString(m_info->type);
case Suffixes:
- return String(m_info->suffixes);
+ return jsString(m_info->suffixes);
case Description:
- return String(m_info->desc);
+ return jsString(m_info->desc);
case EnabledPlugin:
return new Plugin(exec, m_info->plugin);
default:
- return Undefined();
+ return jsUndefined();
}
}
@@ -545,7 +545,7 @@
ValueImp *PluginsFunc::callAsFunction(ExecState *exec, ObjectImp *, const List &args)
{
PluginBase(exec).refresh(args[0]->toBoolean(exec));
- return Undefined();
+ return jsUndefined();
}
ValueImp *NavigatorFunc::callAsFunction(ExecState *exec, ObjectImp *thisObj, const List &)
@@ -554,7 +554,7 @@
return throwError(exec, TypeError);
Navigator *nav = static_cast<Navigator *>(thisObj);
// javaEnabled()
- return Boolean(nav->part()->javaEnabled());
+ return jsBoolean(nav->part()->javaEnabled());
}
} // namespace
1.27 +1 -1 WebCore/khtml/ecma/kjs_proxy.cpp
Index: kjs_proxy.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_proxy.cpp,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- kjs_proxy.cpp 27 Nov 2005 07:54:50 -0000 1.26
+++ kjs_proxy.cpp 11 Dec 2005 00:38:02 -0000 1.27
@@ -246,7 +246,7 @@
ValueImp *TestFunctionImp::callAsFunction(ExecState *exec, ObjectImp */*thisObj*/, const List &args)
{
fprintf(stderr,"--> %s\n",args[0]->toString(exec).ascii());
- return Undefined();
+ return jsUndefined();
}
void KJSProxyImpl::initScript()
1.18 +5 -5 WebCore/khtml/ecma/kjs_range.cpp
Index: kjs_range.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_range.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- kjs_range.cpp 3 Oct 2005 21:12:13 -0000 1.17
+++ kjs_range.cpp 11 Dec 2005 00:38:02 -0000 1.18
@@ -101,9 +101,9 @@
case EndContainer:
return getDOMNode(exec, range.endContainer(exception));
case EndOffset:
- return Number(range.endOffset(exception));
+ return jsNumber(range.endOffset(exception));
case Collapsed:
- return Boolean(range.collapsed(exception));
+ return jsBoolean(range.collapsed(exception));
case CommonAncestorContainer:
return getDOMNode(exec, range.commonAncestorContainer(exception));
default:
@@ -117,7 +117,7 @@
if (!thisObj->inherits(&KJS::DOMRange::info))
return throwError(exec, TypeError);
RangeImpl &range = *static_cast<DOMRange *>(thisObj)->impl();
- ValueImp *result = Undefined();
+ ValueImp *result = jsUndefined();
int exception = 0;
switch (id) {
@@ -170,7 +170,7 @@
result = getDOMRange(exec, range.cloneRange(exception));
break;
case DOMRange::ToString:
- result = getStringOrNull(range.toString(exception));
+ result = jsStringOrNull(range.toString(exception));
break;
case DOMRange::Detach:
range.detach(exception);
@@ -207,7 +207,7 @@
ValueImp *RangeConstructor::getValueProperty(ExecState *, int token) const
{
- return Number(token);
+ return jsNumber(token);
}
ValueImp *getRangeConstructor(ExecState *exec)
1.23 +11 -11 WebCore/khtml/ecma/kjs_traversal.cpp
Index: kjs_traversal.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_traversal.cpp,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- kjs_traversal.cpp 4 Dec 2005 23:14:27 -0000 1.22
+++ kjs_traversal.cpp 11 Dec 2005 00:38:02 -0000 1.23
@@ -80,15 +80,15 @@
case Root:
return getDOMNode(exec,ni.root());
case WhatToShow:
- return Number(ni.whatToShow());
+ return jsNumber(ni.whatToShow());
case Filter:
return getDOMNodeFilter(exec,ni.filter());
case ExpandEntityReferences:
- return Boolean(ni.expandEntityReferences());
+ return jsBoolean(ni.expandEntityReferences());
case ReferenceNode:
return getDOMNode(exec,ni.referenceNode());
case PointerBeforeReferenceNode:
- return Boolean(ni.pointerBeforeReferenceNode());
+ return jsBoolean(ni.pointerBeforeReferenceNode());
default:
kdWarning() << "Unhandled token in DOMNodeIterator::getValueProperty : " << token << endl;
return NULL;
@@ -108,9 +108,9 @@
return getDOMNode(exec,nodeIterator.nextNode(exception));
case DOMNodeIterator::Detach:
nodeIterator.detach(exception);
- return Undefined();
+ return jsUndefined();
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *getDOMNodeIterator(ExecState *exec, NodeIteratorImpl *ni)
@@ -150,7 +150,7 @@
ValueImp *NodeFilterConstructor::getValueProperty(ExecState *, int token) const
{
// We use the token as the value to return directly
- return Number(token);
+ return jsNumber(token);
}
ValueImp *getNodeFilterConstructor(ExecState *exec)
@@ -188,9 +188,9 @@
NodeFilterImpl &nodeFilter = *static_cast<DOMNodeFilter *>(thisObj)->impl();
switch (id) {
case DOMNodeFilter::AcceptNode:
- return Number(nodeFilter.acceptNode(toNode(args[0])));
+ return jsNumber(nodeFilter.acceptNode(toNode(args[0])));
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *getDOMNodeFilter(ExecState *exec, NodeFilterImpl *nf)
@@ -253,11 +253,11 @@
case Root:
return getDOMNode(exec,tw.root());
case WhatToShow:
- return Number(tw.whatToShow());
+ return jsNumber(tw.whatToShow());
case Filter:
return getDOMNodeFilter(exec,tw.filter());
case ExpandEntityReferences:
- return Boolean(tw.expandEntityReferences());
+ return jsBoolean(tw.expandEntityReferences());
case CurrentNode:
return getDOMNode(exec,tw.currentNode());
default:
@@ -298,7 +298,7 @@
case DOMTreeWalker::NextNode:
return getDOMNode(exec,treeWalker.nextNode());
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *getDOMTreeWalker(ExecState *exec, TreeWalkerImpl *tw)
1.19 +3 -3 WebCore/khtml/ecma/kjs_views.cpp
Index: kjs_views.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_views.cpp,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- kjs_views.cpp 7 Dec 2005 01:12:37 -0000 1.18
+++ kjs_views.cpp 11 Dec 2005 00:38:02 -0000 1.19
@@ -86,7 +86,7 @@
case DOMAbstractView::GetComputedStyle: {
ElementImpl *arg0 = toElement(args[0]);
if (!arg0)
- return Undefined(); // throw exception?
+ return jsUndefined(); // throw exception?
else {
if (DocumentImpl* doc = arg0->getDocument())
doc->updateLayoutIgnorePendingStylesheets();
@@ -96,7 +96,7 @@
case DOMAbstractView::GetMatchedCSSRules: {
ElementImpl *arg0 = toElement(args[0]);
if (!arg0)
- return Undefined(); // throw exception?
+ return jsUndefined(); // throw exception?
else {
// No need to update layout, since we just want the back-end rules.
return getDOMCSSRuleList(exec, abstractView.getMatchedCSSRules(arg0,
@@ -104,7 +104,7 @@
}
}
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *getDOMAbstractView(ExecState *exec, AbstractViewImpl *av)
1.195 +123 -123 WebCore/khtml/ecma/kjs_window.cpp
Index: kjs_window.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/kjs_window.cpp,v
retrieving revision 1.194
retrieving revision 1.195
diff -u -r1.194 -r1.195
--- kjs_window.cpp 10 Dec 2005 17:14:36 -0000 1.194
+++ kjs_window.cpp 11 Dec 2005 00:38:02 -0000 1.195
@@ -173,33 +173,33 @@
switch( token ) {
case Height:
- return Number(sg.height());
+ return jsNumber(sg.height());
case Width:
- return Number(sg.width());
+ return jsNumber(sg.width());
case ColorDepth:
case PixelDepth: {
QPaintDeviceMetrics m(QApplication::desktop());
- return Number(m.depth());
+ return jsNumber(m.depth());
}
case AvailLeft: {
QRect clipped = info.workArea().intersect(sg);
- return Number(clipped.x()-sg.x());
+ return jsNumber(clipped.x()-sg.x());
}
case AvailTop: {
QRect clipped = info.workArea().intersect(sg);
- return Number(clipped.y()-sg.y());
+ return jsNumber(clipped.y()-sg.y());
}
case AvailHeight: {
QRect clipped = info.workArea().intersect(sg);
- return Number(clipped.height());
+ return jsNumber(clipped.height());
}
case AvailWidth: {
QRect clipped = info.workArea().intersect(sg);
- return Number(clipped.width());
+ return jsNumber(clipped.width());
}
default:
kdWarning() << "Screen::getValueProperty unhandled token " << token << endl;
- return Undefined();
+ return jsUndefined();
}
}
@@ -399,7 +399,7 @@
#endif
return proxy->interpreter()->globalObject(); // the Global object is the "window"
} else
- return Undefined(); // This can happen with JS disabled on the domain of that window
+ return jsUndefined(); // This can happen with JS disabled on the domain of that window
}
Location *Window::location() const
@@ -621,7 +621,7 @@
UString URL = args[0]->toString(exec);
if (!canShowModalDialogNow(openerWindow) || !allowPopUp(exec, openerWindow))
- return Undefined();
+ return jsUndefined();
const QMap<QString, QString> features = parseFeatures(exec, args[2]);
@@ -668,10 +668,10 @@
KHTMLPart *dialogPart = createNewWindow(exec, openerWindow, URL.qstring(), "", wargs, args[1]);
if (!dialogPart)
- return Undefined();
+ return jsUndefined();
Window *dialogWindow = Window::retrieveWindow(dialogPart);
- ValueImp *returnValue = Undefined();
+ ValueImp *returnValue = jsUndefined();
dialogWindow->setReturnValueSlot(&returnValue);
static_cast<KHTMLPartBrowserExtension *>(dialogPart->browserExtension())->runModal();
dialogWindow->setReturnValueSlot(NULL);
@@ -684,13 +684,13 @@
switch (token) {
case Closed:
- return Boolean(m_part.isNull());
+ return jsBoolean(m_part.isNull());
case Crypto:
- return Undefined(); // ###
+ return jsUndefined(); // ###
case DefaultStatus:
- return String(UString(m_part->jsDefaultStatusBarText()));
+ return jsString(UString(m_part->jsDefaultStatusBarText()));
case Status:
- return String(UString(m_part->jsStatusBarText()));
+ return jsString(UString(m_part->jsStatusBarText()));
case Node:
return getNodeConstructor(exec);
case Range:
@@ -713,22 +713,22 @@
return history;
case Event:
if (!m_evt)
- return Undefined();
+ return jsUndefined();
return getDOMEvent(exec, m_evt);
case InnerHeight:
if (!m_part->view())
- return Undefined();
- return Number(m_part->view()->visibleHeight());
+ return jsUndefined();
+ return jsNumber(m_part->view()->visibleHeight());
case InnerWidth:
if (!m_part->view())
- return Undefined();
- return Number(m_part->view()->visibleWidth());
+ return jsUndefined();
+ return jsNumber(m_part->view()->visibleWidth());
case Length:
- return Number(m_part->frames().count());
+ return jsNumber(m_part->frames().count());
case _Location:
return location();
case Name:
- return String(m_part->name());
+ return jsString(m_part->name());
case _Navigator:
case ClientInformation: {
// Store the navigator in the object so we get the same one each time.
@@ -744,32 +744,32 @@
case Menubar:
return menubar(exec);
case OffscreenBuffering:
- return Boolean(true);
+ return jsBoolean(true);
case Opener:
if (m_part->opener())
return retrieve(m_part->opener());
else
- return Null();
+ return jsNull();
case OuterHeight:
case OuterWidth:
{
if (m_part->view()) {
KWin::Info inf = KWin::info(m_part->view()->topLevelWidget()->winId());
- return Number(token == OuterHeight ?
+ return jsNumber(token == OuterHeight ?
inf.geometry.height() : inf.geometry.width());
} else
- return Number(0);
+ return jsNumber(0);
}
case PageXOffset:
if (!m_part->view())
- return Undefined();
+ return jsUndefined();
updateLayout();
- return Number(m_part->view()->contentsX());
+ return jsNumber(m_part->view()->contentsX());
case PageYOffset:
if (!m_part->view())
- return Undefined();
+ return jsUndefined();
updateLayout();
- return Number(m_part->view()->contentsY());
+ return jsNumber(m_part->view()->contentsY());
case Parent:
return retrieve(m_part->parentPart() ? m_part->parentPart() : (KHTMLPart*)m_part);
case Personalbar:
@@ -781,28 +781,28 @@
// the windowFrame method of the WebKit's UI delegate. Also we don't want to try
// to do anything relative to the screen the window is on, so the code below is no
// good of us anyway.
- return Number(m_part->view()->topLevelWidget()->frameGeometry().x());
+ return jsNumber(m_part->view()->topLevelWidget()->frameGeometry().x());
} else
- return Undefined();
+ return jsUndefined();
}
case ScreenTop:
case ScreenY: {
if (m_part->view()) {
// See comment above in ScreenX.
- return Number(m_part->view()->topLevelWidget()->frameGeometry().y());
+ return jsNumber(m_part->view()->topLevelWidget()->frameGeometry().y());
} else
- return Undefined();
+ return jsUndefined();
}
case ScrollX:
if (!m_part->view())
- return Undefined();
+ return jsUndefined();
updateLayout();
- return Number(m_part->view()->contentsX());
+ return jsNumber(m_part->view()->contentsX());
case ScrollY:
if (!m_part->view())
- return Undefined();
+ return jsUndefined();
updateLayout();
- return Number(m_part->view()->contentsY());
+ return jsNumber(m_part->view()->contentsY());
case Scrollbars:
return scrollbars(exec);
case Statusbar:
@@ -839,7 +839,7 @@
return new XSLTProcessorConstructorImp(exec);
#else
case XSLTProcessor:
- return Undefined();
+ return jsUndefined();
#endif
case FrameElement:
if (DocumentImpl *doc = m_part->xmlDocImpl())
@@ -847,11 +847,11 @@
if (checkNodeSecurity(exec, fe)) {
return getDOMNode(exec, fe);
}
- return Undefined();
+ return jsUndefined();
}
if (!isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
switch (token) {
case Document:
@@ -918,7 +918,7 @@
return getListener(exec,scrollEvent);
}
assert(0);
- return Undefined();
+ return jsUndefined();
}
ValueImp *Window::childFrameGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -1370,16 +1370,16 @@
ValueImp *Window::getListener(ExecState *exec, const AtomicString &eventType) const
{
if (!isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
DOM::DocumentImpl *doc = m_part->xmlDocImpl();
if (!doc)
- return Undefined();
+ return jsUndefined();
DOM::EventListener *listener = doc->getHTMLWindowEventListener(eventType);
if (listener && static_cast<JSEventListener*>(listener)->listenerObjImp())
return static_cast<JSEventListener*>(listener)->listenerObj();
else
- return Null();
+ return jsNull();
}
JSEventListener *Window::getJSEventListener(ValueImp *val, bool html)
@@ -1450,7 +1450,7 @@
KHTMLPart *part = window->m_part;
if (!part)
- return Undefined();
+ return jsUndefined();
KHTMLView *widget = part->view();
ValueImp *v = args[0];
@@ -1462,20 +1462,20 @@
if (part && part->xmlDocImpl())
part->xmlDocImpl()->updateRendering();
KWQ(part)->runJavaScriptAlert(str);
- return Undefined();
+ return jsUndefined();
case Window::Confirm:
if (part && part->xmlDocImpl())
part->xmlDocImpl()->updateRendering();
- return Boolean(KWQ(part)->runJavaScriptConfirm(str));
+ return jsBoolean(KWQ(part)->runJavaScriptConfirm(str));
case Window::Prompt:
if (part && part->xmlDocImpl())
part->xmlDocImpl()->updateRendering();
bool ok;
ok = KWQ(part)->runJavaScriptPrompt(str, args.size() >= 2 ? args[1]->toString(exec).qstring() : QString::null, str2);
if ( ok )
- return String(str2);
+ return jsString(str2);
else
- return Null();
+ return jsNull();
case Window::Open:
{
KConfig *config = new KConfig("konquerorrc");
@@ -1499,7 +1499,7 @@
QString frameName = args[1]->isUndefinedOrNull() ? QString("_blank") : args[1]->toString(exec).qstring();
if ( policy != 0 && !(part->findFrame(frameName) || frameName == "_top" || frameName == "_parent" || frameName == "_self")) {
- return Undefined();
+ return jsUndefined();
} else {
if (v->isUndefined())
str = QString();
@@ -1672,23 +1672,23 @@
}
return Window::retrieve(khtmlpart); // global object
} else
- return Undefined();
+ return jsUndefined();
}
}
case Window::Print:
part->print();
- return Undefined();
+ return jsUndefined();
case Window::ScrollBy:
window->updateLayout();
if(args.size() >= 2 && widget)
widget->scrollBy(args[0]->toInt32(exec), args[1]->toInt32(exec));
- return Undefined();
+ return jsUndefined();
case Window::Scroll:
case Window::ScrollTo:
window->updateLayout();
if(args.size() >= 2 && widget)
widget->setContentsPos(args[0]->toInt32(exec), args[1]->toInt32(exec));
- return Undefined();
+ return jsUndefined();
case Window::MoveBy:
if(args.size() >= 2 && widget)
{
@@ -1701,7 +1701,7 @@
dest.y()+tl->height() <= sg.height()+sg.y() )
tl->move( dest );
}
- return Undefined();
+ return jsUndefined();
case Window::MoveTo:
if(args.size() >= 2 && widget)
{
@@ -1714,7 +1714,7 @@
dest.y()+tl->height() <= sg.height()+sg.y() )
tl->move( dest );
}
- return Undefined();
+ return jsUndefined();
case Window::ResizeBy:
if(args.size() >= 2 && widget)
{
@@ -1732,7 +1732,7 @@
tl->resize( dest.width() - deltaWidth, dest.height() - deltaHeight );
}
}
- return Undefined();
+ return jsUndefined();
case Window::ResizeTo:
if(args.size() >= 2 && widget)
{
@@ -1750,14 +1750,14 @@
tl->resize( dest.width() - deltaWidth, dest.height() - deltaHeight );
}
}
- return Undefined();
+ return jsUndefined();
case Window::SetTimeout:
if (!window->isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
if (args.size() >= 2 && v->isString()) {
int i = args[1]->toInt32(exec);
int r = (const_cast<Window*>(window))->installTimeout(s, i, true /*single shot*/);
- return Number(r);
+ return jsNumber(r);
}
else if (args.size() >= 2 && v->isObject() && static_cast<ObjectImp *>(v)->implementsCall()) {
ValueImp *func = args[0];
@@ -1768,17 +1768,17 @@
List funcArgs = args.copyTail().copyTail();
int r = (const_cast<Window*>(window))->installTimeout(func, funcArgs, i, true /*single shot*/);
- return Number(r);
+ return jsNumber(r);
}
else
- return Undefined();
+ return jsUndefined();
case Window::SetInterval:
if (!window->isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
if (args.size() >= 2 && v->isString()) {
int i = args[1]->toInt32(exec);
int r = (const_cast<Window*>(window))->installTimeout(s, i, false);
- return Number(r);
+ return jsNumber(r);
}
else if (args.size() >= 2 && v->isObject() && static_cast<ObjectImp *>(v)->implementsCall()) {
ValueImp *func = args[0];
@@ -1789,27 +1789,27 @@
List funcArgs = args.copyTail().copyTail();
int r = (const_cast<Window*>(window))->installTimeout(func, funcArgs, i, false);
- return Number(r);
+ return jsNumber(r);
}
else
- return Undefined();
+ return jsUndefined();
case Window::ClearTimeout:
case Window::ClearInterval:
if (!window->isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
(const_cast<Window*>(window))->clearTimeout(v->toInt32(exec));
- return Undefined();
+ return jsUndefined();
case Window::Focus:
if (widget)
widget->setActiveWindow();
- return Undefined();
+ return jsUndefined();
case Window::GetSelection:
if (!window->isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
return window->selection();
case Window::Blur:
KWQ(part)->unfocusWindow();
- return Undefined();
+ return jsUndefined();
case Window::Close:
/* From http://developer.netscape.com/docs/manuals/js/client/jsref/window.htm :
The close method closes only windows opened by JavaScript using the open method.
@@ -1835,33 +1835,33 @@
{
(const_cast<Window*>(window))->scheduleClose();
}
- return Undefined();
+ return jsUndefined();
case Window::CaptureEvents:
case Window::ReleaseEvents:
// If anyone implements these, they need the safescript security check.
if (!window->isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
// Do nothing for now. These are NS-specific legacy calls.
break;
case Window::AddEventListener:
if (!window->isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
if (JSEventListener *listener = Window::retrieveActive(exec)->getJSEventListener(args[1]))
if (DocumentImpl *doc = part->xmlDocImpl())
doc->addWindowEventListener(AtomicString(args[0]->toString(exec).domString()), listener, args[2]->toBoolean(exec));
- return Undefined();
+ return jsUndefined();
case Window::RemoveEventListener:
if (!window->isSafeScript(exec))
- return Undefined();
+ return jsUndefined();
if (JSEventListener *listener = Window::retrieveActive(exec)->getJSEventListener(args[1]))
if (DocumentImpl *doc = part->xmlDocImpl())
doc->removeWindowEventListener(AtomicString(args[0]->toString(exec).domString()), listener, args[2]->toBoolean(exec));
- return Undefined();
+ return jsUndefined();
case Window::ShowModalDialog:
return showModalDialog(exec, window, args);
}
- return Undefined();
+ return jsUndefined();
}
void Window::updateLayout() const
@@ -2022,16 +2022,16 @@
case Length: {
QPtrList<KParts::ReadOnlyPart> frames = part->frames();
unsigned int len = frames.count();
- return Number(len);
+ return jsNumber(len);
}
case Location:
// non-standard property, but works in NS and IE
if (ObjectImp *obj = Window::retrieveWindow(part))
return obj->get(exec, "location");
- return Undefined();
+ return jsUndefined();
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -2045,7 +2045,7 @@
return Window::retrieve(khtml);
}
- return Undefined();
+ return jsUndefined();
}
ValueImp *FrameArray::nameGetter(ExecState *exec, const Identifier& propertyName, const PropertySlot& slot)
@@ -2058,7 +2058,7 @@
return Window::retrieve(khtml);
}
- return Undefined();
+ return jsUndefined();
}
bool FrameArray::getOwnPropertySlot(ExecState *exec, const Identifier& propertyName, PropertySlot& slot)
@@ -2126,7 +2126,7 @@
KURL url = m_part->url();
switch (token) {
case Hash:
- return String(url.ref().isNull() ? QString("") : "#" + url.ref());
+ return jsString(url.ref().isNull() ? QString("") : "#" + url.ref());
case Host: {
// Note: this is the IE spec. The NS spec swaps the two, it says
// "The hostname property is the concatenation of the host and port properties, separated by a colon."
@@ -2134,26 +2134,26 @@
UString str = url.host();
if (url.port())
str += ":" + QString::number((int)url.port());
- return String(str);
+ return jsString(str);
}
case Hostname:
- return String(url.host());
+ return jsString(url.host());
case Href:
if (!url.hasPath())
- return String(url.prettyURL() + "/");
+ return jsString(url.prettyURL() + "/");
else
- return String(url.prettyURL());
+ return jsString(url.prettyURL());
case Pathname:
- return String(url.path().isEmpty() ? QString("/") : url.path());
+ return jsString(url.path().isEmpty() ? QString("/") : url.path());
case Port:
- return String(url.port() ? QString::number((int)url.port()) : QString::fromLatin1(""));
+ return jsString(url.port() ? QString::number((int)url.port()) : QString::fromLatin1(""));
case Protocol:
- return String(url.protocol()+":");
+ return jsString(url.protocol()+":");
case Search:
- return String(url.query());
+ return jsString(url.query());
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -2231,7 +2231,7 @@
ValueImp *Location::toPrimitive(ExecState *exec, Type) const
{
- return String(toString(exec));
+ return jsString(toString(exec));
}
UString Location::toString(ExecState *) const
@@ -2252,7 +2252,7 @@
Window* window = Window::retrieveWindow(part);
if (!window->isSafeScript(exec) && id != Location::Replace)
- return Undefined();
+ return jsUndefined();
switch (id) {
case Location::Replace:
@@ -2293,11 +2293,11 @@
break;
}
case Location::ToString:
- return String(location->toString(exec));
+ return jsString(location->toString(exec));
}
} else
kdDebug(6070) << "LocationFunc::tryExecute - no part!" << endl;
- return Undefined();
+ return jsUndefined();
}
////////////////////// Selection Object ////////////////////////
@@ -2335,7 +2335,7 @@
{
const Window* window = Window::retrieveWindow(m_part);
if (!window) {
- return Undefined();
+ return jsUndefined();
}
DocumentImpl *docimpl = m_part->xmlDocImpl();
@@ -2348,28 +2348,28 @@
return getDOMNode(exec, m_part->selection().base().node());
case AnchorOffset:
case BaseOffset:
- return Number(m_part->selection().base().offset());
+ return jsNumber(m_part->selection().base().offset());
case FocusNode:
case ExtentNode:
return getDOMNode(exec, m_part->selection().extent().node());
case FocusOffset:
case ExtentOffset:
- return Number(m_part->selection().extent().offset());
+ return jsNumber(m_part->selection().extent().offset());
case IsCollapsed:
- return Boolean(!m_part->selection().isRange());
+ return jsBoolean(!m_part->selection().isRange());
case _Type: {
switch (m_part->selection().state()) {
case khtml::SelectionController::NONE:
- return String("None");
+ return jsString("None");
case khtml::SelectionController::CARET:
- return String("Caret");
+ return jsString("Caret");
case khtml::SelectionController::RANGE:
- return String("Range");
+ return jsString("Range");
}
}
default:
assert(0);
- return Undefined();
+ return jsUndefined();
}
}
@@ -2383,7 +2383,7 @@
ValueImp *Selection::toPrimitive(ExecState *exec, Type) const
{
- return String(toString(exec));
+ return jsString(toString(exec));
}
UString Selection::toString(ExecState *) const
@@ -2459,7 +2459,7 @@
}
}
- return Undefined();
+ return jsUndefined();
}
////////////////////// BarInfo Object ////////////////////////
@@ -2482,19 +2482,19 @@
assert(token == Visible);
switch (m_type) {
case Locationbar:
- return Boolean(KWQ(m_part)->locationbarVisible());
+ return jsBoolean(KWQ(m_part)->locationbarVisible());
case Menubar:
- return Boolean(KWQ(m_part)->locationbarVisible());
+ return jsBoolean(KWQ(m_part)->locationbarVisible());
case Personalbar:
- return Boolean(KWQ(m_part)->personalbarVisible());
+ return jsBoolean(KWQ(m_part)->personalbarVisible());
case Scrollbars:
- return Boolean(KWQ(m_part)->scrollbarsVisible());
+ return jsBoolean(KWQ(m_part)->scrollbarsVisible());
case Statusbar:
- return Boolean(KWQ(m_part)->statusbarVisible());
+ return jsBoolean(KWQ(m_part)->statusbarVisible());
case Toolbar:
- return Boolean(KWQ(m_part)->toolbarVisible());
+ return jsBoolean(KWQ(m_part)->toolbarVisible());
default:
- return Boolean(false);
+ return jsBoolean(false);
}
}
@@ -2531,22 +2531,22 @@
{
KParts::BrowserExtension *ext = part->browserExtension();
if ( !ext )
- return Number( 0 );
+ return jsNumber(0);
KParts::BrowserInterface *iface = ext->browserInterface();
if ( !iface )
- return Number( 0 );
+ return jsNumber(0);
QVariant length = iface->property( "historyLength" );
if ( length.type() != QVariant::UInt )
- return Number( 0 );
+ return jsNumber(0);
- return Number( length.toUInt() );
+ return jsNumber( length.toUInt() );
}
default:
kdWarning() << "Unhandled token in History::getValueProperty : " << token << endl;
- return Undefined();
+ return jsUndefined();
}
}
@@ -2573,11 +2573,11 @@
steps = args[0]->toInt32(exec);
break;
default:
- return Undefined();
+ return jsUndefined();
}
history->part->scheduleHistoryNavigation(steps);
- return Undefined();
+ return jsUndefined();
}
/////////////////////////////////////////////////////////////////////////////
1.50 +32 -32 WebCore/khtml/ecma/xmlhttprequest.cpp
Index: xmlhttprequest.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/xmlhttprequest.cpp,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -r1.49 -r1.50
--- xmlhttprequest.cpp 2 Dec 2005 03:48:06 -0000 1.49
+++ xmlhttprequest.cpp 11 Dec 2005 00:38:03 -0000 1.50
@@ -130,12 +130,12 @@
{
switch (token) {
case ReadyState:
- return Number(state);
+ return jsNumber(state);
case ResponseText:
- return getStringOrNull(DOM::DOMString(response));
+ return jsStringOrNull(DOM::DOMString(response));
case ResponseXML:
if (state != Completed) {
- return Undefined();
+ return jsUndefined();
}
if (!createdDocument) {
QString mimeType;
@@ -165,7 +165,7 @@
}
if (!typeIsXML) {
- return Undefined();
+ return jsUndefined();
}
return getDOMNode(exec, responseXML.get());
@@ -177,13 +177,13 @@
if (onReadyStateChangeListener && onReadyStateChangeListener->listenerObjImp()) {
return onReadyStateChangeListener->listenerObj();
} else {
- return Null();
+ return jsNull();
}
case Onload:
if (onLoadListener && onLoadListener->listenerObjImp()) {
return onLoadListener->listenerObj();
} else {
- return Null();
+ return jsNull();
}
default:
kdWarning() << "XMLHttpRequest::getValueProperty unhandled token " << token << endl;
@@ -410,22 +410,22 @@
ValueImp *XMLHttpRequest::getAllResponseHeaders() const
{
if (responseHeaders.isEmpty()) {
- return Undefined();
+ return jsUndefined();
}
int endOfLine = responseHeaders.find("\n");
if (endOfLine == -1) {
- return Undefined();
+ return jsUndefined();
}
- return String(responseHeaders.mid(endOfLine + 1) + "\n");
+ return jsString(responseHeaders.mid(endOfLine + 1) + "\n");
}
ValueImp *XMLHttpRequest::getResponseHeader(const QString& name) const
{
if (responseHeaders.isEmpty()) {
- return Undefined();
+ return jsUndefined();
}
QRegExp headerLinePattern(name + ":", false);
@@ -442,18 +442,18 @@
if (headerLinePos == -1) {
- return Undefined();
+ return jsUndefined();
}
int endOfLine = responseHeaders.find("\n", headerLinePos + matchLength);
- return String(responseHeaders.mid(headerLinePos + matchLength, endOfLine - (headerLinePos + matchLength)).stripWhiteSpace());
+ return jsString(responseHeaders.mid(headerLinePos + matchLength, endOfLine - (headerLinePos + matchLength)).stripWhiteSpace());
}
ValueImp *XMLHttpRequest::getStatus() const
{
if (responseHeaders.isEmpty()) {
- return Undefined();
+ return jsUndefined();
}
int endOfLine = responseHeaders.find("\n");
@@ -462,7 +462,7 @@
int codeEnd = firstLine.find(" ", codeStart + 1);
if (codeStart == -1 || codeEnd == -1) {
- return Undefined();
+ return jsUndefined();
}
QString number = firstLine.mid(codeStart + 1, codeEnd - (codeStart + 1));
@@ -470,16 +470,16 @@
bool ok = false;
int code = number.toInt(&ok);
if (!ok) {
- return Undefined();
+ return jsUndefined();
}
- return Number(code);
+ return jsNumber(code);
}
ValueImp *XMLHttpRequest::getStatusText() const
{
if (responseHeaders.isEmpty()) {
- return Undefined();
+ return jsUndefined();
}
int endOfLine = responseHeaders.find("\n");
@@ -488,12 +488,12 @@
int codeEnd = firstLine.find(" ", codeStart + 1);
if (codeStart == -1 || codeEnd == -1) {
- return Undefined();
+ return jsUndefined();
}
QString statusText = firstLine.mid(codeEnd + 1, endOfLine - (codeEnd + 1)).stripWhiteSpace();
- return String(statusText);
+ return jsString(statusText);
}
void XMLHttpRequest::processSyncLoadResults(const QByteArray &data, const KURL &finalURL, const QString &headers)
@@ -634,18 +634,18 @@
switch (id) {
case XMLHttpRequest::Abort: {
request->abort();
- return Undefined();
+ return jsUndefined();
}
case XMLHttpRequest::GetAllResponseHeaders: {
if (args.size() != 0) {
- return Undefined();
+ return jsUndefined();
}
return request->getAllResponseHeaders();
}
case XMLHttpRequest::GetResponseHeader: {
if (args.size() != 1) {
- return Undefined();
+ return jsUndefined();
}
return request->getResponseHeader(args[0]->toString(exec).qstring());
@@ -653,7 +653,7 @@
case XMLHttpRequest::Open:
{
if (args.size() < 2 || args.size() > 5) {
- return Undefined();
+ return jsUndefined();
}
QString method = args[0]->toString(exec).qstring();
@@ -674,16 +674,16 @@
request->open(method, url, async);
- return Undefined();
+ return jsUndefined();
}
case XMLHttpRequest::Send:
{
if (args.size() > 1) {
- return Undefined();
+ return jsUndefined();
}
if (request->state != Loading) {
- return Undefined();
+ return jsUndefined();
}
QString body;
@@ -702,27 +702,27 @@
request->send(body);
- return Undefined();
+ return jsUndefined();
}
case XMLHttpRequest::SetRequestHeader: {
if (args.size() != 2) {
- return Undefined();
+ return jsUndefined();
}
request->setRequestHeader(args[0]->toString(exec).qstring(), args[1]->toString(exec).qstring());
- return Undefined();
+ return jsUndefined();
}
case XMLHttpRequest::OverrideMIMEType: {
if (args.size() != 1) {
- return Undefined();
+ return jsUndefined();
}
request->MIMETypeOverride = args[0]->toString(exec).qstring();
- return Undefined();
+ return jsUndefined();
}
}
- return Undefined();
+ return jsUndefined();
}
} // end namespace
1.10 +4 -4 WebCore/khtml/ecma/xmlserializer.cpp
Index: xmlserializer.cpp
===================================================================
RCS file: /cvs/root/WebCore/khtml/ecma/xmlserializer.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- xmlserializer.cpp 3 Oct 2005 21:12:14 -0000 1.9
+++ xmlserializer.cpp 11 Dec 2005 00:38:03 -0000 1.10
@@ -80,19 +80,19 @@
case XMLSerializer::SerializeToString:
{
if (args.size() != 1) {
- return Undefined();
+ return jsUndefined();
}
if (!args[0]->toObject(exec)->inherits(&DOMNode::info)) {
- return Undefined();
+ return jsUndefined();
}
NodeImpl *node = static_cast<NodeImpl *>(static_cast<DOMNode *>(args[0]->toObject(exec))->impl());
- return getStringOrNull(node->toString());
+ return jsStringOrNull(node->toString());
}
}
- return Undefined();
+ return jsUndefined();
}
} // end namespace
1.9 +2 -2 WebCore/ksvg2/ecma/Ecma.cpp
Index: Ecma.cpp
===================================================================
RCS file: /cvs/root/WebCore/ksvg2/ecma/Ecma.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- Ecma.cpp 21 Nov 2005 08:29:30 -0000 1.8
+++ Ecma.cpp 11 Dec 2005 00:38:07 -0000 1.9
@@ -401,11 +401,11 @@
KJS::ValueImp *KSVG::getSVGPathSeg(KJS::ExecState *exec, SVGPathSeg s)
{
if(s == SVGPathSeg::null)
- return KJS::Null();
+ return KJS::jsNull();
KDOM::ScriptInterpreter *interpreter = static_cast<KDOM::ScriptInterpreter *>(exec->interpreter());
if(!interpreter)
- return KJS::Null();
+ return KJS::jsNull();
// Reuse existing bridge, if possible
KJS::ObjectImp *request = interpreter->getDOMObject(s.handle());
1.8 +1 -1 WebCore/ksvg2/ecma/GlobalObject.cpp
Index: GlobalObject.cpp
===================================================================
RCS file: /cvs/root/WebCore/ksvg2/ecma/GlobalObject.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- GlobalObject.cpp 21 Nov 2005 08:29:30 -0000 1.7
+++ GlobalObject.cpp 11 Dec 2005 00:38:07 -0000 1.8
@@ -103,7 +103,7 @@
// This isn't necessarily a bug. Some code uses if(!window.blah) window.blah=1
// But it can also mean something isn't loaded or implemented...
kdDebug(26004) << "GlobalObject::get property not found: " << p.qstring() << endl;
- return KJS::Undefined();
+ return KJS::jsUndefined();
}
// vim:ts=4:noet
1.6 +1 -1 WebCore/kwq/WebCoreScriptDebugger.mm
Index: WebCoreScriptDebugger.mm
===================================================================
RCS file: /cvs/root/WebCore/kwq/WebCoreScriptDebugger.mm,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- WebCoreScriptDebugger.mm 27 Nov 2005 07:54:53 -0000 1.5
+++ WebCoreScriptDebugger.mm 11 Dec 2005 00:38:07 -0000 1.6
@@ -338,7 +338,7 @@
if (eval) {
JSLock lock;
List args;
- args.append(String(code));
+ args.append(jsString(code));
result = eval->call(state, NULL, args);
}
else {
More information about the webkit-changes
mailing list