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 4354 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4365 | 4365 |
4366 // Lookup support for serialized scope info. Returns the | 4366 // Lookup support for serialized scope info. Returns the |
4367 // parameter index for a given parameter name if the parameter is present; | 4367 // parameter index for a given parameter name if the parameter is present; |
4368 // otherwise returns a value < 0. The name must be an internalized string. | 4368 // otherwise returns a value < 0. The name must be an internalized string. |
4369 int ParameterIndex(String* name); | 4369 int ParameterIndex(String* name); |
4370 | 4370 |
4371 // Lookup support for serialized scope info. Returns the function context | 4371 // Lookup support for serialized scope info. Returns the function context |
4372 // slot index if the function name is present and context-allocated (named | 4372 // slot index if the function name is present and context-allocated (named |
4373 // function expressions, only), otherwise returns a value < 0. The name | 4373 // function expressions, only), otherwise returns a value < 0. The name |
4374 // must be an internalized string. | 4374 // must be an internalized string. |
4375 int FunctionContextSlotIndex(String* name, VariableMode* mode); | 4375 int FunctionContextSlotIndex(String* name); |
4376 | 4376 |
4377 // Lookup support for serialized scope info. Returns the receiver context | 4377 // Lookup support for serialized scope info. Returns the receiver context |
4378 // slot index if scope has a "this" binding, and the binding is | 4378 // slot index if scope has a "this" binding, and the binding is |
4379 // context-allocated. Otherwise returns a value < 0. | 4379 // context-allocated. Otherwise returns a value < 0. |
4380 int ReceiverContextSlotIndex(); | 4380 int ReceiverContextSlotIndex(); |
4381 | 4381 |
4382 FunctionKind function_kind(); | 4382 FunctionKind function_kind(); |
4383 | 4383 |
4384 static Handle<ScopeInfo> Create(Isolate* isolate, Zone* zone, Scope* scope); | 4384 static Handle<ScopeInfo> Create(Isolate* isolate, Zone* zone, Scope* scope); |
4385 static Handle<ScopeInfo> CreateGlobalThisBinding(Isolate* isolate); | 4385 static Handle<ScopeInfo> CreateGlobalThisBinding(Isolate* isolate); |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4477 : public BitField<LanguageMode, CallsEvalField::kNext, 1> {}; | 4477 : public BitField<LanguageMode, CallsEvalField::kNext, 1> {}; |
4478 class DeclarationScopeField | 4478 class DeclarationScopeField |
4479 : public BitField<bool, LanguageModeField::kNext, 1> {}; | 4479 : public BitField<bool, LanguageModeField::kNext, 1> {}; |
4480 class ReceiverVariableField | 4480 class ReceiverVariableField |
4481 : public BitField<VariableAllocationInfo, DeclarationScopeField::kNext, | 4481 : public BitField<VariableAllocationInfo, DeclarationScopeField::kNext, |
4482 2> {}; | 4482 2> {}; |
4483 class HasNewTargetField | 4483 class HasNewTargetField |
4484 : public BitField<bool, ReceiverVariableField::kNext, 1> {}; | 4484 : public BitField<bool, ReceiverVariableField::kNext, 1> {}; |
4485 class FunctionVariableField | 4485 class FunctionVariableField |
4486 : public BitField<VariableAllocationInfo, HasNewTargetField::kNext, 2> {}; | 4486 : public BitField<VariableAllocationInfo, HasNewTargetField::kNext, 2> {}; |
4487 class FunctionVariableMode | 4487 class AsmModuleField |
4488 : public BitField<VariableMode, FunctionVariableField::kNext, 3> {}; | 4488 : public BitField<bool, FunctionVariableField::kNext, 1> {}; |
4489 class AsmModuleField : public BitField<bool, FunctionVariableMode::kNext, 1> { | |
4490 }; | |
4491 class AsmFunctionField : public BitField<bool, AsmModuleField::kNext, 1> {}; | 4489 class AsmFunctionField : public BitField<bool, AsmModuleField::kNext, 1> {}; |
4492 class HasSimpleParametersField | 4490 class HasSimpleParametersField |
4493 : public BitField<bool, AsmFunctionField::kNext, 1> {}; | 4491 : public BitField<bool, AsmFunctionField::kNext, 1> {}; |
4494 class FunctionKindField | 4492 class FunctionKindField |
4495 : public BitField<FunctionKind, HasSimpleParametersField::kNext, 9> {}; | 4493 : public BitField<FunctionKind, HasSimpleParametersField::kNext, 9> {}; |
4496 | 4494 |
4497 // Properties of variables. | 4495 // Properties of variables. |
4498 class VariableModeField : public BitField<VariableMode, 0, 3> {}; | 4496 class VariableModeField : public BitField<VariableMode, 0, 3> {}; |
4499 class InitFlagField : public BitField<InitializationFlag, 3, 1> {}; | 4497 class InitFlagField : public BitField<InitializationFlag, 3, 1> {}; |
4500 class MaybeAssignedFlagField : public BitField<MaybeAssignedFlag, 4, 1> {}; | 4498 class MaybeAssignedFlagField : public BitField<MaybeAssignedFlag, 4, 1> {}; |
(...skipping 6672 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11173 } | 11171 } |
11174 return value; | 11172 return value; |
11175 } | 11173 } |
11176 }; | 11174 }; |
11177 | 11175 |
11178 | 11176 |
11179 } // NOLINT, false-positive due to second-order macros. | 11177 } // NOLINT, false-positive due to second-order macros. |
11180 } // NOLINT, false-positive due to second-order macros. | 11178 } // NOLINT, false-positive due to second-order macros. |
11181 | 11179 |
11182 #endif // V8_OBJECTS_H_ | 11180 #endif // V8_OBJECTS_H_ |
OLD | NEW |