OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 7662 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7673 // - reference to the original flag string | 7673 // - reference to the original flag string |
7674 // If it is an atom regexp | 7674 // If it is an atom regexp |
7675 // - a reference to a literal string to search for | 7675 // - a reference to a literal string to search for |
7676 // If it is an irregexp regexp: | 7676 // If it is an irregexp regexp: |
7677 // - a reference to code for Latin1 inputs (bytecode or compiled), or a smi | 7677 // - a reference to code for Latin1 inputs (bytecode or compiled), or a smi |
7678 // used for tracking the last usage (used for code flushing). | 7678 // used for tracking the last usage (used for code flushing). |
7679 // - a reference to code for UC16 inputs (bytecode or compiled), or a smi | 7679 // - a reference to code for UC16 inputs (bytecode or compiled), or a smi |
7680 // used for tracking the last usage (used for code flushing).. | 7680 // used for tracking the last usage (used for code flushing).. |
7681 // - max number of registers used by irregexp implementations. | 7681 // - max number of registers used by irregexp implementations. |
7682 // - number of capture registers (output values) of the regexp. | 7682 // - number of capture registers (output values) of the regexp. |
7683 class JSRegExp final : public JSObject { | 7683 class JSRegExp: public JSObject { |
7684 public: | 7684 public: |
7685 // Meaning of Type: | 7685 // Meaning of Type: |
7686 // NOT_COMPILED: Initial value. No data has been stored in the JSRegExp yet. | 7686 // NOT_COMPILED: Initial value. No data has been stored in the JSRegExp yet. |
7687 // ATOM: A simple string to match against using an indexOf operation. | 7687 // ATOM: A simple string to match against using an indexOf operation. |
7688 // IRREGEXP: Compiled with Irregexp. | 7688 // IRREGEXP: Compiled with Irregexp. |
7689 // IRREGEXP_NATIVE: Compiled to native code with Irregexp. | 7689 // IRREGEXP_NATIVE: Compiled to native code with Irregexp. |
7690 enum Type { NOT_COMPILED, ATOM, IRREGEXP }; | 7690 enum Type { NOT_COMPILED, ATOM, IRREGEXP }; |
7691 enum Flag { | 7691 enum Flag { |
7692 kNone = 0, | 7692 kNone = 0, |
7693 kGlobal = 1 << 0, | 7693 kGlobal = 1 << 0, |
(...skipping 3038 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10732 } | 10732 } |
10733 return value; | 10733 return value; |
10734 } | 10734 } |
10735 }; | 10735 }; |
10736 | 10736 |
10737 | 10737 |
10738 } // NOLINT, false-positive due to second-order macros. | 10738 } // NOLINT, false-positive due to second-order macros. |
10739 } // NOLINT, false-positive due to second-order macros. | 10739 } // NOLINT, false-positive due to second-order macros. |
10740 | 10740 |
10741 #endif // V8_OBJECTS_H_ | 10741 #endif // V8_OBJECTS_H_ |
OLD | NEW |