mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 19:58:11 +00:00
LibJS: Virtualize access to an Object's own properties
Object now has virtual get_own_property() and put_own_property() member functions that can be overridden to provide custom behavior. We use these virtuals to move Array-specific access behavior to Array.
This commit is contained in:
parent
2a7dbac0c5
commit
324b92fd06
4 changed files with 57 additions and 30 deletions
|
@ -45,6 +45,8 @@ private:
|
|||
virtual const char* class_name() const override { return "Array"; }
|
||||
virtual void visit_children(Cell::Visitor&) override;
|
||||
virtual bool is_array() const override { return true; }
|
||||
virtual Optional<Value> get_own_property(const String& property_name) const override;
|
||||
virtual bool put_own_property(const String& property_name, Value) override;
|
||||
|
||||
Vector<Value> m_elements;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue