Changeset 20310 in webkit for trunk/JavaScriptCore/kjs/function.cpp
- Timestamp:
- Mar 18, 2007, 10:43:47 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/function.cpp
r20304 r20310 263 263 { 264 264 // Find the arguments from the closest context. 265 if (propertyName == exec-> dynamicInterpreter()->argumentsIdentifier()) {265 if (propertyName == exec->propertyNames().arguments) { 266 266 slot.setCustom(this, argumentsGetter); 267 267 return true; … … 269 269 270 270 // Compute length of parameters. 271 if (propertyName == lengthPropertyName) {271 if (propertyName == exec->propertyNames().length) { 272 272 slot.setCustom(this, lengthGetter); 273 273 return true; 274 274 } 275 275 276 if (propertyName == callerPropertyName) {276 if (propertyName == exec->propertyNames().caller) { 277 277 slot.setCustom(this, callerGetter); 278 278 return true; … … 284 284 void FunctionImp::put(ExecState* exec, const Identifier& propertyName, JSValue* value, int attr) 285 285 { 286 if (propertyName == exec-> dynamicInterpreter()->argumentsIdentifier() || propertyName == lengthPropertyName)286 if (propertyName == exec->propertyNames().arguments || propertyName == exec->propertyNames().length) 287 287 return; 288 288 InternalFunctionImp::put(exec, propertyName, value, attr); … … 291 291 bool FunctionImp::deleteProperty(ExecState* exec, const Identifier& propertyName) 292 292 { 293 if (propertyName == exec-> dynamicInterpreter()->argumentsIdentifier() || propertyName == lengthPropertyName)293 if (propertyName == exec->propertyNames().arguments || propertyName == exec->propertyNames().length) 294 294 return false; 295 295 return InternalFunctionImp::deleteProperty(exec, propertyName); … … 306 306 { 307 307 if (!parameters) 308 return Identifier::null();308 return CommonIdentifiers::shared()->nullIdentifier; 309 309 310 310 if (static_cast<size_t>(index) >= parameters->size()) 311 return Identifier::null();311 return CommonIdentifiers::shared()->nullIdentifier; 312 312 313 313 Identifier name = parameters->at(index).name; … … 316 316 for (size_t i = index + 1; i < parameters->size(); ++i) 317 317 if (parameters->at(i).name == name) 318 return Identifier::null();318 return CommonIdentifiers::shared()->nullIdentifier; 319 319 320 320 return name; … … 342 342 { 343 343 JSObject* proto; 344 JSValue* p = get(exec, prototypePropertyName);344 JSValue* p = get(exec, exec->propertyNames().prototype); 345 345 if (p->isObject()) 346 346 proto = static_cast<JSObject*>(p); … … 422 422 assert(indexIsNumber && indexAsNumber < size); 423 423 424 _map[indexAsNumber] = Identifier::null();424 _map[indexAsNumber] = CommonIdentifiers::shared()->nullIdentifier; 425 425 } 426 426 … … 450 450 indexToNameMap(func, args) 451 451 { 452 putDirect( calleePropertyName, func, DontEnum);453 putDirect( lengthPropertyName, args.size(), DontEnum);452 putDirect(exec->propertyNames().callee, func, DontEnum); 453 putDirect(exec->propertyNames().length, args.size(), DontEnum); 454 454 455 455 int i = 0; … … 543 543 } 544 544 545 if (propertyName == exec-> dynamicInterpreter()->argumentsIdentifier()) {545 if (propertyName == exec->propertyNames().arguments) { 546 546 slot.setCustom(this, getArgumentsGetter()); 547 547 return true; … … 553 553 bool ActivationImp::deleteProperty(ExecState* exec, const Identifier& propertyName) 554 554 { 555 if (propertyName == exec-> dynamicInterpreter()->argumentsIdentifier())555 if (propertyName == exec->propertyNames().arguments) 556 556 return false; 557 557 return JSObject::deleteProperty(exec, propertyName); … … 585 585 586 586 587 GlobalFuncImp::GlobalFuncImp(ExecState* , FunctionPrototype* funcProto, int i, int len, const Identifier& name)587 GlobalFuncImp::GlobalFuncImp(ExecState* exec, FunctionPrototype* funcProto, int i, int len, const Identifier& name) 588 588 : InternalFunctionImp(funcProto, name) 589 589 , id(i) 590 590 { 591 putDirect( lengthPropertyName, len, DontDelete|ReadOnly|DontEnum);591 putDirect(exec->propertyNames().length, len, DontDelete|ReadOnly|DontEnum); 592 592 } 593 593
Note:
See TracChangeset
for help on using the changeset viewer.