Lines Matching refs:subject
44 // IrregexpExecOnce) on the subject.
45 // This ensures that the regexp is compiled for the subject, and that
46 // the subject is flat.
51 Handle<String> subject);
58 Handle<String> subject, int index, int32_t* output,
62 Handle<String> subject, int index,
65 // Execute a regular expression on the subject, starting from index.
72 Handle<String> subject, int index, int32_t* output,
80 Isolate* isolate, Handle<JSRegExp> regexp, Handle<String> subject,
279 Handle<String> subject) {
286 if (RegExpImpl::IrregexpPrepare(isolate, re, subject) == -1) {
303 Isolate* isolate, Handle<JSRegExp> regexp, Handle<String> subject,
306 return ExperimentalRegExp::OneshotExec(isolate, regexp, subject, index,
312 Handle<String> subject, int index,
319 return RegExpImpl::AtomExec(isolate, regexp, subject, index,
322 return RegExpImpl::IrregexpExec(isolate, regexp, subject, index,
325 return ExperimentalRegExp::Exec(isolate, regexp, subject, index,
342 Handle<RegExpMatchInfo> last_match_info, String subject,
346 last_match_info->SetLastSubject(subject);
347 last_match_info->SetLastInput(subject);
355 Handle<String> subject, int index, int32_t* output,
358 DCHECK_LE(index, subject->length());
360 subject = String::Flatten(isolate, subject);
368 if (index + needle_len > subject->length()) {
374 String::FlatContent subject_content = subject->GetFlatContent(no_gc);
402 Handle<String> subject, int index,
409 AtomExecRaw(isolate, re, subject, index, output_registers, kNumRegisters);
415 SetAtomLastCapture(isolate, last_match_info, *subject, output_registers[0],
423 // source for either one-byte or two-byte subject strings.
642 Handle<String> subject) {
643 DCHECK(subject->IsFlat());
646 bool is_one_byte = String::IsOneByteRepresentationUnderneath(*subject);
647 if (!RegExpImpl::EnsureCompiledIrregexp(isolate, regexp, subject,
658 Handle<String> subject, int index,
661 DCHECK_LE(index, subject->length());
662 DCHECK(subject->IsFlat());
666 bool is_one_byte = String::IsOneByteRepresentationUnderneath(*subject);
670 EnsureCompiledIrregexp(isolate, regexp, subject, is_one_byte);
675 int res = NativeRegExpMacroAssembler::Match(regexp, subject, output,
691 // the, potentially, different subject (the string can switch between
694 is_one_byte = String::IsOneByteRepresentationUnderneath(*subject);
703 isolate, regexp, subject, output, output_size, index);
718 is_one_byte = String::IsOneByteRepresentationUnderneath(*subject);
719 EnsureCompiledIrregexp(isolate, regexp, subject, is_one_byte);
728 Isolate* isolate, Handle<JSRegExp> regexp, Handle<String> subject,
733 subject = String::Flatten(isolate, subject);
738 PrintF("\n\nSubject string: '%s'\n\n", subject->ToCString().get());
742 // For very long subject strings, the regexp interpreter is currently much
745 // subject string length is equal or greater than the given heuristic value.
747 subject->length() >= JSRegExp::kTierUpForSubjectLengthValue) {
758 RegExpImpl::IrregexpPrepare(isolate, regexp, subject);
775 RegExpImpl::IrregexpExecRaw(isolate, regexp, subject, previous_index,
780 if (output_registers[0] >= subject->length()) {
785 return RegExp::SetLastMatchInfo(isolate, last_match_info, subject,
788 return ExperimentalRegExp::OneshotExec(isolate, regexp, subject,
802 Handle<String> subject, int capture_count, int32_t* match) {
828 result->SetLastSubject(*subject);
829 result->SetLastInput(*subject);
1045 Handle<String> subject, Isolate* isolate)
1049 subject_(subject),