LibJS/Bytecode: Implement optional chaining

This commit is contained in:
Luke Wilde 2023-06-17 14:50:23 +01:00 committed by Andreas Kling
commit 1116ba191a
Notes: sideshowbarker 2024-07-17 07:35:03 +09:00
2 changed files with 148 additions and 54 deletions

View file

@ -1975,6 +1975,10 @@ public:
virtual Completion execute(Interpreter&) const override;
virtual ThrowCompletionOr<JS::Reference> to_reference(Interpreter&) const override;
virtual void dump(int indent) const override;
virtual Bytecode::CodeGenerationErrorOr<void> generate_bytecode(Bytecode::Generator&) const override;
Expression const& base() const { return *m_base; }
Vector<Reference> const& references() const { return m_references; }
private:
struct ReferenceAndValue {