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_INTERFACE_H_ | 5 #ifndef V8_INTERFACE_H_ |
6 #define V8_INTERFACE_H_ | 6 #define V8_INTERFACE_H_ |
7 | 7 |
8 #include "src/ast-value-factory.h" | 8 #include "src/ast-value-factory.h" |
9 #include "src/zone-inl.h" // For operator new. | 9 #include "src/zone-inl.h" // For operator new. |
10 | 10 |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 | 165 |
166 // --------------------------------------------------------------------------- | 166 // --------------------------------------------------------------------------- |
167 // Debugging. | 167 // Debugging. |
168 #ifdef DEBUG | 168 #ifdef DEBUG |
169 void Print(int n = 0); // n = indentation; n < 0 => don't print recursively | 169 void Print(int n = 0); // n = indentation; n < 0 => don't print recursively |
170 #endif | 170 #endif |
171 | 171 |
172 // --------------------------------------------------------------------------- | 172 // --------------------------------------------------------------------------- |
173 // Implementation. | 173 // Implementation. |
174 private: | 174 private: |
175 struct ValueCreate; | 175 struct Cache; |
176 struct ConstCreate; | |
177 | 176 |
178 enum Flags { // All flags are monotonic | 177 enum Flags { // All flags are monotonic |
179 NONE = 0, | 178 NONE = 0, |
180 VALUE = 1, // This type describes a value | 179 VALUE = 1, // This type describes a value |
181 CONST = 2, // This type describes a constant | 180 CONST = 2, // This type describes a constant |
182 MODULE = 4, // This type describes a module | 181 MODULE = 4, // This type describes a module |
183 FROZEN = 8 // This type is fully determined | 182 FROZEN = 8 // This type is fully determined |
184 }; | 183 }; |
185 | 184 |
186 int flags_; | 185 int flags_; |
(...skipping 20 matching lines...) Expand all Loading... |
207 } | 206 } |
208 | 207 |
209 void DoAdd(const void* name, uint32_t hash, Interface* interface, Zone* zone, | 208 void DoAdd(const void* name, uint32_t hash, Interface* interface, Zone* zone, |
210 bool* ok); | 209 bool* ok); |
211 void DoUnify(Interface* that, bool* ok, Zone* zone); | 210 void DoUnify(Interface* that, bool* ok, Zone* zone); |
212 }; | 211 }; |
213 | 212 |
214 } } // namespace v8::internal | 213 } } // namespace v8::internal |
215 | 214 |
216 #endif // V8_INTERFACE_H_ | 215 #endif // V8_INTERFACE_H_ |
OLD | NEW |