diff options
author | Matheus Marchini <mmarchini@netflix.com> | 2020-03-05 10:49:19 -0800 |
---|---|---|
committer | Matheus Marchini <mmarchini@netflix.com> | 2020-03-18 16:23:22 -0700 |
commit | 2883c855e0105b51e5c8020d21458af109ffe3d4 (patch) | |
tree | 26777aad0a398e9f7755c8b65ac76827fe352a81 /deps/v8/src/objects/js-regexp.tq | |
parent | 5f0af2af2a67216e00fe07ccda11e889d14abfcd (diff) | |
download | node-new-2883c855e0105b51e5c8020d21458af109ffe3d4.tar.gz |
deps: update V8 to 8.1.307.20
PR-URL: https://github.com/nodejs/node/pull/32116
Reviewed-By: Michaƫl Zasso <targos@protonmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Diffstat (limited to 'deps/v8/src/objects/js-regexp.tq')
-rw-r--r-- | deps/v8/src/objects/js-regexp.tq | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/deps/v8/src/objects/js-regexp.tq b/deps/v8/src/objects/js-regexp.tq new file mode 100644 index 0000000000..f2e216f282 --- /dev/null +++ b/deps/v8/src/objects/js-regexp.tq @@ -0,0 +1,45 @@ +// Copyright 2019 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +@generateCppClass +extern class JSRegExp extends JSObject { + data: FixedArray|Undefined; + source: String|Undefined; + flags: Smi|Undefined; +} + +// Note: Although a condition for a FastJSRegExp is having a positive smi +// lastIndex (see RegExpBuiltinsAssembler::BranchIfFastRegExp), it is possible +// for this to change without transitioning the transient type. As a precaution, +// validate the lastIndex is positive smi when used in fast paths. +transient type FastJSRegExp extends JSRegExp; + +extern operator '.global' macro +RegExpBuiltinsAssembler::FastFlagGetterGlobal(FastJSRegExp): bool; +extern operator '.unicode' macro +RegExpBuiltinsAssembler::FastFlagGetterUnicode(FastJSRegExp): bool; +extern operator '.lastIndex' macro +RegExpBuiltinsAssembler::FastLoadLastIndex(FastJSRegExp): Smi; +extern operator '.lastIndex=' macro +RegExpBuiltinsAssembler::FastStoreLastIndex(FastJSRegExp, Smi): void; + +extern shape JSRegExpResult extends JSArray { + // In-object properties: + // The below fields are externally exposed. + index: JSAny; + input: JSAny; + groups: JSAny; + + // The below fields are for internal use only. + cached_indices_or_regexp: JSRegExpResultIndices|JSRegExp; + names: FixedArray|Undefined; + regexp_input: String; + regexp_last_index: Smi; +} + +extern shape JSRegExpResultIndices extends JSArray { + // In-object properties: + // The groups field is externally exposed. + groups: JSAny; +} |