5 #ifndef V8_OBJECTS_LITERAL_OBJECTS_INL_H_ 6 #define V8_OBJECTS_LITERAL_OBJECTS_INL_H_ 8 #include "src/objects/literal-objects.h" 10 #include "src/objects-inl.h" 13 #include "src/objects/object-macros.h" 18 OBJECT_CONSTRUCTORS_IMPL(ObjectBoilerplateDescription, FixedArray)
20 SMI_ACCESSORS(ObjectBoilerplateDescription, flags,
21 FixedArray::OffsetOfElementAt(kLiteralTypeOffset));
23 OBJECT_CONSTRUCTORS_IMPL(ClassBoilerplate, FixedArray)
24 CAST_ACCESSOR2(ClassBoilerplate)
26 BIT_FIELD_ACCESSORS(ClassBoilerplate, flags, install_class_name_accessor,
27 ClassBoilerplate::Flags::InstallClassNameAccessorBit)
29 BIT_FIELD_ACCESSORS(ClassBoilerplate, flags, arguments_count,
30 ClassBoilerplate::Flags::ArgumentsCountBits)
32 SMI_ACCESSORS(ClassBoilerplate, flags,
33 FixedArray::OffsetOfElementAt(kFlagsIndex));
35 ACCESSORS(ClassBoilerplate, static_properties_template, Object,
36 FixedArray::OffsetOfElementAt(kClassPropertiesTemplateIndex));
38 ACCESSORS(ClassBoilerplate, static_elements_template, Object,
39 FixedArray::OffsetOfElementAt(kClassElementsTemplateIndex));
41 ACCESSORS2(ClassBoilerplate, static_computed_properties, FixedArray,
42 FixedArray::OffsetOfElementAt(kClassComputedPropertiesIndex));
44 ACCESSORS(ClassBoilerplate, instance_properties_template, Object,
45 FixedArray::OffsetOfElementAt(kPrototypePropertiesTemplateIndex));
47 ACCESSORS(ClassBoilerplate, instance_elements_template, Object,
48 FixedArray::OffsetOfElementAt(kPrototypeElementsTemplateIndex));
50 ACCESSORS2(ClassBoilerplate, instance_computed_properties, FixedArray,
51 FixedArray::OffsetOfElementAt(kPrototypeComputedPropertiesIndex));
53 SMI_ACCESSORS(ArrayBoilerplateDescription, flags, kFlagsOffset);
55 ACCESSORS2(ArrayBoilerplateDescription, constant_elements, FixedArrayBase,
56 kConstantElementsOffset);
58 ElementsKind ArrayBoilerplateDescription::elements_kind()
const {
59 return static_cast<ElementsKind
>(flags());
62 void ArrayBoilerplateDescription::set_elements_kind(ElementsKind kind) {
66 bool ArrayBoilerplateDescription::is_empty()
const {
67 return constant_elements()->length() == 0;
73 #include "src/objects/object-macros-undef.h" 75 #endif // V8_OBJECTS_LITERAL_OBJECTS_INL_H_