Home | History | Annotate | Download | only in ast

Lines Matching refs:property

22 #include "src/property-details.h"
23 #include "src/property.h"
250 Property* property = expr->AsProperty();
251 LhsKind assign_type = Property::GetAssignType(property);
413 ClassLiteral::Property* property = properties()->at(i);
414 Expression* value = property->value();
416 property->SetSlot(spec->AddStoreICSlot(language_mode));
418 property->SetStoreDataPropertySlot(
423 bool ObjectLiteral::Property::IsCompileTimeValue() const {
430 void ObjectLiteral::Property::set_emit_store(bool emit_store) {
434 bool ObjectLiteral::Property::emit_store() const { return emit_store_; }
445 ObjectLiteral::Property* property = properties()->at(property_index);
446 if (property->is_computed_name()) break;
447 if (property->IsCompileTimeValue()) continue;
449 Literal* key = property->key()->AsLiteral();
450 Expression* value = property->value();
451 switch (property->kind()) {
452 case ObjectLiteral::Property::SPREAD:
453 case ObjectLiteral::Property::CONSTANT:
455 case ObjectLiteral::Property::MATERIALIZED_LITERAL:
457 case ObjectLiteral::Property::COMPUTED:
461 if (property->emit_store()) {
462 property->SetSlot(spec->AddStoreOwnICSlot());
464 property->SetSlot(spec->AddStoreICSlot(language_mode), 1);
469 if (property->emit_store() && FunctionLiteral::NeedsHomeObject(value)) {
470 property->SetSlot(spec->AddStoreICSlot(language_mode));
473 case ObjectLiteral::Property::PROTOTYPE:
475 case ObjectLiteral::Property::GETTER:
476 if (property->emit_store() && FunctionLiteral::NeedsHomeObject(value)) {
477 property->SetSlot(spec->AddStoreICSlot(language_mode));
480 case ObjectLiteral::Property::SETTER:
481 if (property->emit_store() && FunctionLiteral::NeedsHomeObject(value)) {
482 property->SetSlot(spec->AddStoreICSlot(language_mode));
489 ObjectLiteral::Property* property = properties()->at(property_index);
491 property->value();
492 if (property->kind() != ObjectLiteral::Property::PROTOTYPE) {
494 property->SetSlot(spec->AddStoreICSlot(language_mode));
497 property->SetStoreDataPropertySlot(
504 const auto GETTER = ObjectLiteral::Property::GETTER;
505 const auto SETTER = ObjectLiteral::Property::SETTER;
512 ObjectLiteral::Property* property = properties()->at(i);
513 if (property->is_computed_name()) continue;
514 if (property->kind() == ObjectLiteral::Property::PROTOTYPE) continue;
515 Literal* literal = property->key()->AsLiteral();
524 static_cast<ObjectLiteral::Property*>(entry->value)->kind();
525 if (!((property->kind() == GETTER && previous_kind == SETTER) ||
526 (property->kind() == SETTER && previous_kind == GETTER))) {
527 property->set_emit_store(false);
530 entry->value = property;
535 bool ObjectLiteral::IsBoilerplateProperty(ObjectLiteral::Property* property) {
536 return property != NULL &&
537 property->kind() != ObjectLiteral::Property::PROTOTYPE;
550 ObjectLiteral::Property* property = properties()->at(i);
551 if (!IsBoilerplateProperty(property)) {
557 DCHECK(property->is_computed_name());
561 DCHECK(!property->is_computed_name());
563 MaterializedLiteral* m_literal = property->value()->AsMaterializedLiteral();
569 const AstValue* key = property->key()->AsLiteral()->raw_value();
570 Expression* value = property->value();
617 ObjectLiteral::Property* property = properties()->at(i);
618 if (!IsBoilerplateProperty(property)) {
622 if (property->is_computed_name()) {
626 Handle<Object> key = property->key()->AsLiteral()->value();
642 ObjectLiteral::Property* property = properties()->at(i);
643 if (!IsBoilerplateProperty(property)) {
648 DCHECK(property->is_computed_name());
651 DCHECK(!property->is_computed_name());
653 MaterializedLiteral* m_literal = property->value()->AsMaterializedLiteral();
661 Handle<Object> key = property->key()->AsLiteral()->value();
662 Handle<Object> value = GetBoilerplateValue(property->value(), isolate);
1033 return PROPERTY;
1071 Property* property = expression()->AsProperty();
1072 if (property != nullptr) {
1073 bool is_super = property->IsSuperAccess();
1074 if (property->key()->IsPropertyName()) {