5#ifndef V8_OBJECTS_PROPERTY_DESCRIPTOR_H_
6#define V8_OBJECTS_PROPERTY_DESCRIPTOR_H_
16class PropertyDescriptorObject;
30 return desc->has_get() || desc->has_set();
35 return desc->has_value() || desc->has_writable();
bool IsRegularDataProperty() const
void set_value(DirectHandle< JSAny > value)
IndirectHandle< JSAny > name_
void set_configurable(bool configurable)
bool has_writable() const
static bool IsAccessorDescriptor(PropertyDescriptor *desc)
Handle< JSAny > value() const
void set_name(DirectHandle< JSAny > name)
Handle< UnionOf< JSAny, FunctionTemplateInfo > > get() const
void set_set(DirectHandle< UnionOf< JSAny, FunctionTemplateInfo > > set)
void set_writable(bool writable)
static bool IsGenericDescriptor(PropertyDescriptor *desc)
static void CompletePropertyDescriptor(Isolate *isolate, PropertyDescriptor *desc)
static bool ToPropertyDescriptor(Isolate *isolate, Handle< JSAny > obj, PropertyDescriptor *desc)
bool configurable() const
bool has_configurable() const
Handle< UnionOf< JSAny, FunctionTemplateInfo > > set() const
static bool IsDataDescriptor(PropertyDescriptor *desc)
PropertyAttributes ToAttributes()
void set_enumerable(bool enumerable)
bool has_enumerable() const
IndirectHandle< JSAny > value_
DirectHandle< JSObject > ToObject(Isolate *isolate)
DirectHandle< JSAny > name() const
bool IsRegularAccessorProperty() const
void set_get(DirectHandle< UnionOf< JSAny, FunctionTemplateInfo > > get)
DirectHandle< PropertyDescriptorObject > ToPropertyDescriptorObject(Isolate *isolate)
IndirectHandle< UnionOf< JSAny, FunctionTemplateInfo > > get_
IndirectHandle< UnionOf< JSAny, FunctionTemplateInfo > > set_
V8_INLINE IndirectHandle< T > indirect_handle(DirectHandle< T > handle)
typename detail::FlattenUnionHelper< Union<>, Ts... >::type UnionOf