Changeset 11525 in webkit for trunk/JavaScriptCore/kjs/regexp_object.cpp
- Timestamp:
- Dec 10, 2005, 4:38:07 PM (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/regexp_object.cpp
r11034 r11525 50 50 : ObjectImp(objProto) 51 51 { 52 setInternalValue( String(""));52 setInternalValue(jsString("")); 53 53 54 54 // The constructor will be added later in RegExpObject's constructor (?) … … 80 80 if (thisObj->inherits(&RegExpPrototypeImp::info)) { 81 81 switch (id) { 82 case ToString: return String("//");82 case ToString: return jsString("//"); 83 83 } 84 84 } … … 106 106 lastIndex = 0; 107 107 if (lastIndex < 0 || lastIndex > input.size()) { 108 thisObj->put(exec, "lastIndex", js Zero(), DontDelete | DontEnum);109 return Null();108 thisObj->put(exec, "lastIndex", jsNumber(0), DontDelete | DontEnum); 109 return jsNull(); 110 110 } 111 111 … … 116 116 // Test 117 117 if (id == Test) 118 return Boolean(didMatch);118 return jsBoolean(didMatch); 119 119 120 120 // Exec 121 121 if (didMatch) { 122 122 if (globalFlag) 123 thisObj->put(exec, "lastIndex", Number(foundIndex + match.size()), DontDelete | DontEnum);123 thisObj->put(exec, "lastIndex", jsNumber(foundIndex + match.size()), DontDelete | DontEnum); 124 124 return regExpObj->arrayOfMatches(exec, match); 125 125 } else { 126 126 if (globalFlag) 127 thisObj->put(exec, "lastIndex", js Zero(), DontDelete | DontEnum);128 return Null();127 thisObj->put(exec, "lastIndex", jsNumber(0), DontDelete | DontEnum); 128 return jsNull(); 129 129 } 130 130 } … … 141 141 result += "m"; 142 142 } 143 return String(result);144 } 145 146 return Undefined();143 return jsString(result); 144 } 145 146 return jsUndefined(); 147 147 } 148 148 … … 201 201 202 202 // no. of arguments for constructor 203 putDirect(lengthPropertyName, js Two(), ReadOnly|DontDelete|DontEnum);203 putDirect(lengthPropertyName, jsNumber(2), ReadOnly|DontDelete|DontEnum); 204 204 } 205 205 … … 241 241 List list; 242 242 // The returned array contains 'result' as first item, followed by the list of matches 243 list.append( String(result));243 list.append(jsString(result)); 244 244 if ( lastOvector ) 245 245 for ( unsigned i = 1 ; i < lastNumSubPatterns + 1 ; ++i ) … … 250 250 else { 251 251 UString substring = lastInput.substr( start, lastOvector[2*i+1] - start ); 252 list.append( String(substring));252 list.append(jsString(substring)); 253 253 } 254 254 } 255 255 ObjectImp *arr = exec->lexicalInterpreter()->builtinArray()->construct(exec, list); 256 arr->put(exec, "index", Number(lastOvector[0]));257 arr->put(exec, "input", String(lastInput));256 arr->put(exec, "index", jsNumber(lastOvector[0])); 257 arr->put(exec, "input", jsString(lastInput)); 258 258 return arr; 259 259 } … … 263 263 if (lastOvector && i < lastNumSubPatterns + 1) { 264 264 UString substring = lastInput.substr(lastOvector[2*i], lastOvector[2*i+1] - lastOvector[2*i] ); 265 return String(substring);265 return jsString(substring); 266 266 } 267 267 268 return String("");268 return jsString(""); 269 269 } 270 270 … … 273 273 if (lastOvector) { 274 274 UString substring = lastInput.substr(lastOvector[0], lastOvector[1] - lastOvector[0]); 275 return String(substring);276 } 277 278 return String("");275 return jsString(substring); 276 } 277 278 return jsString(""); 279 279 } 280 280 … … 285 285 assert(lastOvector); 286 286 UString substring = lastInput.substr(lastOvector[2*i], lastOvector[2*i+1] - lastOvector[2*i]); 287 return String(substring);287 return jsString(substring); 288 288 } 289 289 290 return String("");290 return jsString(""); 291 291 } 292 292 … … 295 295 if (lastOvector) { 296 296 UString substring = lastInput.substr(0, lastOvector[0]); 297 return String(substring);298 } 299 300 return String("");297 return jsString(substring); 298 } 299 300 return jsString(""); 301 301 } 302 302 … … 306 306 UString s = lastInput; 307 307 UString substring = s.substr(lastOvector[1], s.size() - lastOvector[1]); 308 return String(substring);309 } 310 311 return String("");308 return jsString(substring); 309 } 310 311 return jsString(""); 312 312 } 313 313 … … 354 354 } 355 355 356 return String("");356 return jsString(""); 357 357 } 358 358 … … 407 407 408 408 dat->putDirect("source", jsString(p), DontDelete | ReadOnly | DontEnum); 409 dat->putDirect("lastIndex", js Zero(), DontDelete | DontEnum);409 dat->putDirect("lastIndex", jsNumber(0), DontDelete | DontEnum); 410 410 411 411 int reflags = RegExp::None;
Note:
See TracChangeset
for help on using the changeset viewer.