Lines Matching refs:RegExp
34 // Implements RegExp.prototype.toString, see ECMA-262 section 15.10.6.4.
43 // Prepare a RegExp for being executed one or more times (using
82 RegExp::ExecQuirks exec_quirks = RegExp::ExecQuirks::kNone);
106 bool RegExp::CanGenerateBytecode() {
112 bool RegExp::VerifySyntax(Zone* zone, uintptr_t stack_limit, const CharT* input,
123 template bool RegExp::VerifySyntax<uint8_t>(Zone*, uintptr_t, const uint8_t*,
127 template bool RegExp::VerifySyntax<base::uc16>(
131 MaybeHandle<Object> RegExp::ThrowRegExpException(Isolate* isolate,
147 void RegExp::ThrowRegExpException(Isolate* isolate, Handle<JSRegExp> re,
153 bool RegExp::IsUnmodifiedRegExp(Isolate* isolate, Handle<JSRegExp> regexp) {
183 // Generic RegExp methods. Dispatches to implementation specific methods.
186 MaybeHandle<Object> RegExp::Compile(Isolate* isolate, Handle<JSRegExp> re,
216 return RegExp::ThrowRegExpException(isolate, re, pattern,
235 return RegExp::ThrowRegExpException(isolate, re, pattern,
278 bool RegExp::EnsureFullyCompiled(Isolate* isolate, Handle<JSRegExp> re,
302 MaybeHandle<Object> RegExp::ExperimentalOneshotExec(
305 RegExp::ExecQuirks exec_quirks) {
311 MaybeHandle<Object> RegExp::Exec(Isolate* isolate, Handle<JSRegExp> regexp,
330 // RegExp Atom implementation: Simple string search using indexOf.
369 return RegExp::RE_FAILURE;
411 if (res == RegExp::RE_FAILURE) return isolate->factory()->null_value();
413 DCHECK_EQ(res, RegExp::RE_SUCCESS);
498 Handle<FixedArray> RegExp::CreateCaptureNameMap(
533 // Compile the RegExp.
548 USE(RegExp::ThrowRegExpException(isolate, re, pattern, compile_data.error));
565 RegExp::ThrowRegExpException(isolate, re, compile_data.error);
590 RegExp::CreateCaptureNameMap(isolate, compile_data.named_captures);
681 RegExp::RE_SUCCESS);
683 RegExp::RE_FAILURE);
685 RegExp::RE_EXCEPTION);
730 RegExp::ExecQuirks exec_quirks) {
778 if (res == RegExp::RE_SUCCESS) {
779 if (exec_quirks == RegExp::ExecQuirks::kTreatMatchAtEndAsFailure) {
785 return RegExp::SetLastMatchInfo(isolate, last_match_info, subject,
787 } else if (res == RegExp::RE_FALLBACK_TO_EXPERIMENTAL) {
790 } else if (res == RegExp::RE_EXCEPTION) {
794 DCHECK(res == RegExp::RE_FAILURE);
800 Handle<RegExpMatchInfo> RegExp::SetLastMatchInfo(
834 void RegExp::DotPrintForTesting(const char* label, RegExpNode* node) {
852 if (pattern->length() > RegExp::kRegExpTooLargeToOptimize) return true;
860 bool RegExp::CompileForTesting(Isolate* isolate, Zone* zone,
1163 isolate_, RegExp::kFromRuntime, *regexp_, *subject_,
1185 if (num_matches_ == RegExp::kInternalRegExpFallbackToExperimental) {