Lines Matching refs:re
84 Handle<JSRegExp> re,
88 Isolate* isolate = re->GetIsolate();
156 MaybeHandle<Object> RegExpImpl::Compile(Handle<JSRegExp> re,
159 Isolate* isolate = re->GetIsolate();
167 LOG(isolate, RegExpCompileEvent(re, in_cache));
171 re->set_data(*cached);
172 return re;
181 return ThrowRegExpException(re,
194 AtomCompile(re, pattern, flags, pattern);
208 AtomCompile(re, pattern, flags, atom_string);
213 IrregexpInitialize(re, pattern, flags, parse_result.capture_count);
215 DCHECK(re->data()->IsFixedArray());
218 Handle<FixedArray> data(FixedArray::cast(re->data()));
221 return re;
245 void RegExpImpl::AtomCompile(Handle<JSRegExp> re,
249 re->GetIsolate()->factory()->SetRegExpAtomData(re,
322 Handle<Object> RegExpImpl::AtomExec(Handle<JSRegExp> re,
326 Isolate* isolate = re->GetIsolate();
332 int res = AtomExecRaw(re, subject, index, output_registers, kNumRegisters);
352 bool RegExpImpl::EnsureCompiledIrregexp(Handle<JSRegExp> re,
355 Object* compiled_code = re->DataAt(JSRegExp::code_index(is_one_byte));
363 Object* saved_code = re->DataAt(JSRegExp::saved_code_index(is_one_byte));
366 re->SetDataAt(JSRegExp::code_index(is_one_byte), saved_code);
370 return CompileIrregexp(re, sample_subject, is_one_byte);
374 static void CreateRegExpErrorObjectAndThrow(Handle<JSRegExp> re,
379 elements->set(0, re->Pattern());
389 bool RegExpImpl::CompileIrregexp(Handle<JSRegExp> re,
393 Isolate* isolate = re->GetIsolate();
398 Object* entry = re->DataAt(JSRegExp::code_index(is_one_byte));
412 Object* error_string = re->DataAt(JSRegExp::saved_code_index(is_one_byte));
415 CreateRegExpErrorObjectAndThrow(re, error_message, isolate);
419 JSRegExp::Flags flags = re->GetFlags();
421 Handle<String> pattern(re->Pattern());
430 USE(ThrowRegExpException(re,
444 CreateRegExpErrorObjectAndThrow(re, error_message, isolate);
448 re->data()));
459 int RegExpImpl::IrregexpMaxRegisterCount(FixedArray* re) {
461 re->get(JSRegExp::kIrregexpMaxRegisterCountIndex))->value();
465 void RegExpImpl::SetIrregexpMaxRegisterCount(FixedArray* re, int value) {
466 re->set(JSRegExp::kIrregexpMaxRegisterCountIndex, Smi::FromInt(value));
470 int RegExpImpl::IrregexpNumberOfCaptures(FixedArray* re) {
471 return Smi::cast(re->get(JSRegExp::kIrregexpCaptureCountIndex))->value();
475 int RegExpImpl::IrregexpNumberOfRegisters(FixedArray* re) {
476 return Smi::cast(re->get(JSRegExp::kIrregexpMaxRegisterCountIndex))->value();
480 ByteArray* RegExpImpl::IrregexpByteCode(FixedArray* re, bool is_one_byte) {
481 return ByteArray::cast(re->get(JSRegExp::code_index(is_one_byte)));
485 Code* RegExpImpl::IrregexpNativeCode(FixedArray* re, bool is_one_byte) {
486 return Code::cast(re->get(JSRegExp::code_index(is_one_byte)));
490 void RegExpImpl::IrregexpInitialize(Handle<JSRegExp> re,
495 re->GetIsolate()->factory()->SetRegExpIrregexpData(re,
1303 // Since we're scanning in reverse order, if we've already
5638 // or after the start point of the range we're adding.
5641 // the range we're adding.
5649 // the range we're adding.
5663 // the range we're adding and where the overlapping range starts
5686 // we're adding so we can just update it and move the start point
5687 // of the range we're adding just past it.