| OLD | NEW |
| 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 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
| 6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
| 7 | 7 |
| 8 #include <iosfwd> | 8 #include <iosfwd> |
| 9 #include <memory> | 9 #include <memory> |
| 10 | 10 |
| (...skipping 9249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9260 Handle<Object> search, Handle<Object> position); | 9260 Handle<Object> search, Handle<Object> position); |
| 9261 | 9261 |
| 9262 // Encapsulates logic related to a match and its capture groups as required | 9262 // Encapsulates logic related to a match and its capture groups as required |
| 9263 // by GetSubstitution. | 9263 // by GetSubstitution. |
| 9264 class Match { | 9264 class Match { |
| 9265 public: | 9265 public: |
| 9266 virtual Handle<String> GetMatch() = 0; | 9266 virtual Handle<String> GetMatch() = 0; |
| 9267 virtual Handle<String> GetPrefix() = 0; | 9267 virtual Handle<String> GetPrefix() = 0; |
| 9268 virtual Handle<String> GetSuffix() = 0; | 9268 virtual Handle<String> GetSuffix() = 0; |
| 9269 | 9269 |
| 9270 // A named capture can be invalid (if it is not specified in the pattern), |
| 9271 // unmatched (specified but not matched in the current string), and matched. |
| 9272 enum CaptureState { INVALID, UNMATCHED, MATCHED }; |
| 9273 |
| 9270 virtual int CaptureCount() = 0; | 9274 virtual int CaptureCount() = 0; |
| 9271 virtual bool HasNamedCaptures() = 0; | 9275 virtual bool HasNamedCaptures() = 0; |
| 9272 virtual MaybeHandle<String> GetCapture(int i, bool* capture_exists) = 0; | 9276 virtual MaybeHandle<String> GetCapture(int i, bool* capture_exists) = 0; |
| 9273 virtual MaybeHandle<String> GetNamedCapture(Handle<String> name, | 9277 virtual MaybeHandle<String> GetNamedCapture(Handle<String> name, |
| 9274 bool* capture_exists) = 0; | 9278 CaptureState* state) = 0; |
| 9275 | 9279 |
| 9276 virtual ~Match() {} | 9280 virtual ~Match() {} |
| 9277 }; | 9281 }; |
| 9278 | 9282 |
| 9279 // ES#sec-getsubstitution | 9283 // ES#sec-getsubstitution |
| 9280 // GetSubstitution(matched, str, position, captures, replacement) | 9284 // GetSubstitution(matched, str, position, captures, replacement) |
| 9281 // Expand the $-expressions in the string and return a new string with | 9285 // Expand the $-expressions in the string and return a new string with |
| 9282 // the result. | 9286 // the result. |
| 9283 MUST_USE_RESULT static MaybeHandle<String> GetSubstitution( | 9287 MUST_USE_RESULT static MaybeHandle<String> GetSubstitution( |
| 9284 Isolate* isolate, Match* match, Handle<String> replacement); | 9288 Isolate* isolate, Match* match, Handle<String> replacement); |
| (...skipping 2114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11399 } | 11403 } |
| 11400 }; | 11404 }; |
| 11401 | 11405 |
| 11402 | 11406 |
| 11403 } // NOLINT, false-positive due to second-order macros. | 11407 } // NOLINT, false-positive due to second-order macros. |
| 11404 } // NOLINT, false-positive due to second-order macros. | 11408 } // NOLINT, false-positive due to second-order macros. |
| 11405 | 11409 |
| 11406 #include "src/objects/object-macros-undef.h" | 11410 #include "src/objects/object-macros-undef.h" |
| 11407 | 11411 |
| 11408 #endif // V8_OBJECTS_H_ | 11412 #endif // V8_OBJECTS_H_ |
| OLD | NEW |