1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 00:47:36 +00:00

LibJS: Parse object expressions

This commit is contained in:
0xtechnobabble 2020-03-21 02:29:00 +02:00 committed by Andreas Kling
parent c64b5e73f5
commit bc002f807a
7 changed files with 48 additions and 4 deletions

View file

@ -26,6 +26,7 @@
#pragma once
#include <AK/HashMap.h>
#include <AK/NonnullRefPtrVector.h>
#include <AK/RefPtr.h>
#include <AK/String.h>
@ -572,13 +573,18 @@ private:
class ObjectExpression : public Expression {
public:
ObjectExpression() {}
ObjectExpression(HashMap<String, NonnullRefPtr<Expression>> properties = {})
: m_properties(properties)
{
}
virtual Value execute(Interpreter&) const override;
virtual void dump(int indent) const override;
private:
virtual const char* class_name() const override { return "ObjectExpression"; }
HashMap<String, NonnullRefPtr<Expression>> m_properties;
};
class ArrayExpression : public Expression {