19 switch (representation.
kind()) {
25 return os <<
"double";
27 return os <<
"heap-object";
29 return os <<
"tagged";
31 return os <<
"wasm-value";
41 os << (((attributes &
READ_ONLY) == 0) ?
"W" :
"_");
42 os << (((attributes &
DONT_ENUM) == 0) ?
"E" :
"_");
43 os << (((attributes &
DONT_DELETE) == 0) ?
"C" :
"_");
51 return os <<
"mutable";
67 details_(
kind, attributes, location, constness, representation,
132 if (print_dict_index) {
164void PropertyDetails::Print(
bool dictionary_mode) {
166 if (dictionary_mode) {
171 os <<
"\n" << std::flush;
static Descriptor DataField(Isolate *isolate, DirectHandle< Name > key, int field_index, PropertyAttributes attributes, Representation representation)
static Descriptor AccessorConstant(DirectHandle< Name > key, DirectHandle< Object > foreign, PropertyAttributes attributes)
static Descriptor DataConstant(DirectHandle< Name > key, DirectHandle< Object > value, PropertyAttributes attributes)
static V8_EXPORT_PRIVATE Tagged< FieldType > Any()
static Representation OptimalRepresentation(Tagged< Object > obj, PtrComprCageBase cage_base)
PropertyAttributes attributes() const
PropertyLocation location() const
Representation representation() const
int dictionary_index() const
void PrintAsFastTo(std::ostream &out, PrintMode mode=kPrintFull)
PropertyKind kind() const
PropertyConstness constness() const
bool IsEnumerable() const
void PrintAsSlowTo(std::ostream &out, bool print_dict_index)
const char * Mnemonic() const
constexpr Kind kind() const
static constexpr Representation Tagged()
Handle< SharedFunctionInfo > key_
V8_INLINE constexpr bool IsWeak(TaggedImpl< HeapObjectReferenceType::WEAK, StorageType > obj)
V8_INLINE constexpr bool IsSmi(TaggedImpl< kRefType, StorageType > obj)
std::ostream & operator<<(std::ostream &os, AtomicMemoryOrder order)
V8_INLINE PtrComprCageBase GetPtrComprCageBase()
bool IsUniqueName(Tagged< Name > obj)
#define DCHECK_IMPLIES(v1, v2)
#define DCHECK(condition)