Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | List of all members
dart::FieldGuardUpdater Class Reference

Public Member Functions

 FieldGuardUpdater (const Field *field, const Object &value)
 
bool IsUpdateNeeded ()
 
void DoUpdate ()
 

Detailed Description

Definition at line 12602 of file object.cc.

Constructor & Destructor Documentation

◆ FieldGuardUpdater()

dart::FieldGuardUpdater::FieldGuardUpdater ( const Field field,
const Object value 
)

Definition at line 13044 of file object.cc.

13045 : field_(field),
13046 value_(value),
13047 guarded_cid_(field->guarded_cid()),
13048 is_nullable_(field->is_nullable()),
13049 list_length_(field->guarded_list_length()),
13050 list_length_in_object_offset_(
13051 field->guarded_list_length_in_object_offset()),
13052 static_type_exactness_state_(field->static_type_exactness_state()) {
13053 ReviewGuards();
13054 ReviewExactnessState();
13055}

Member Function Documentation

◆ DoUpdate()

void dart::FieldGuardUpdater::DoUpdate ( )

Definition at line 13057 of file object.cc.

13057 {
13058 if (does_guarded_cid_need_update_) {
13059 field_->set_guarded_cid(guarded_cid_);
13060 }
13061 if (does_is_nullable_need_update_) {
13062 field_->set_is_nullable(is_nullable_);
13063 }
13064 if (does_list_length_and_offset_need_update_) {
13065 field_->set_guarded_list_length(list_length_);
13067 list_length_in_object_offset_);
13068 }
13069 if (does_static_type_exactness_state_need_update_) {
13070 field_->set_static_type_exactness_state(static_type_exactness_state_);
13071 }
13072}
void set_static_type_exactness_state(StaticTypeExactnessState state) const
Definition object.h:4612
void set_guarded_cid(intptr_t cid) const
Definition object.h:4633
void set_guarded_list_length_in_object_offset(intptr_t offset) const
Definition object.h:4661
void set_is_nullable(bool val) const
Definition object.h:4726
void set_guarded_list_length(intptr_t list_length) const
Definition object.h:4651

◆ IsUpdateNeeded()

bool dart::FieldGuardUpdater::IsUpdateNeeded ( )
inline

Definition at line 12606 of file object.cc.

12606 {
12607 return does_guarded_cid_need_update_ || does_is_nullable_need_update_ ||
12608 does_list_length_and_offset_need_update_ ||
12609 does_static_type_exactness_state_need_update_;
12610 }

The documentation for this class was generated from the following file: