Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Side by Side Diff: src/objects.cc

Issue 2780173002: [regexp] Add support for dotAll flag (Closed)
Patch Set: Reserve enough space for '.' character range Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/objects.h" 5 #include "src/objects.h"
6 6
7 #include <cmath> 7 #include <cmath>
8 #include <iomanip> 8 #include <iomanip>
9 #include <memory> 9 #include <memory>
10 #include <sstream> 10 #include <sstream>
(...skipping 16104 matching lines...) Expand 10 before | Expand all | Expand 10 after
16115 switch (flags->Get(i)) { 16115 switch (flags->Get(i)) {
16116 case 'g': 16116 case 'g':
16117 flag = JSRegExp::kGlobal; 16117 flag = JSRegExp::kGlobal;
16118 break; 16118 break;
16119 case 'i': 16119 case 'i':
16120 flag = JSRegExp::kIgnoreCase; 16120 flag = JSRegExp::kIgnoreCase;
16121 break; 16121 break;
16122 case 'm': 16122 case 'm':
16123 flag = JSRegExp::kMultiline; 16123 flag = JSRegExp::kMultiline;
16124 break; 16124 break;
16125 case 's':
16126 if (FLAG_harmony_regexp_dotall) {
16127 flag = JSRegExp::kDotAll;
16128 } else {
16129 return JSRegExp::Flags(0);
16130 }
16131 break;
16125 case 'u': 16132 case 'u':
16126 flag = JSRegExp::kUnicode; 16133 flag = JSRegExp::kUnicode;
16127 break; 16134 break;
16128 case 'y': 16135 case 'y':
16129 flag = JSRegExp::kSticky; 16136 flag = JSRegExp::kSticky;
16130 break; 16137 break;
16131 default: 16138 default:
16132 return JSRegExp::Flags(0); 16139 return JSRegExp::Flags(0);
16133 } 16140 }
16134 // Duplicate flag. 16141 // Duplicate flag.
(...skipping 4232 matching lines...) Expand 10 before | Expand all | Expand 10 after
20367 // depend on this. 20374 // depend on this.
20368 return DICTIONARY_ELEMENTS; 20375 return DICTIONARY_ELEMENTS;
20369 } 20376 }
20370 DCHECK_LE(kind, LAST_ELEMENTS_KIND); 20377 DCHECK_LE(kind, LAST_ELEMENTS_KIND);
20371 return kind; 20378 return kind;
20372 } 20379 }
20373 } 20380 }
20374 20381
20375 } // namespace internal 20382 } // namespace internal
20376 } // namespace v8 20383 } // namespace v8
OLDNEW
« no previous file with comments | « src/objects.h ('k') | src/parsing/scanner.cc » ('j') | test/mjsunit/harmony/regexp-dotall.js » ('J')

Powered by Google App Engine
This is Rietveld 408576698