|
@@ -23,6 +23,8 @@ public: \
|
|
virtual StringView class_name() const override { return #class_##sv; }
|
|
virtual StringView class_name() const override { return #class_##sv; }
|
|
|
|
|
|
class Environment : public Cell {
|
|
class Environment : public Cell {
|
|
|
|
+ JS_CELL(Environment, Cell);
|
|
|
|
+
|
|
public:
|
|
public:
|
|
virtual bool has_this_binding() const { return false; }
|
|
virtual bool has_this_binding() const { return false; }
|
|
virtual ThrowCompletionOr<Value> get_this_binding(VM&) const { return Value {}; }
|
|
virtual ThrowCompletionOr<Value> get_this_binding(VM&) const { return Value {}; }
|
|
@@ -48,8 +50,6 @@ public:
|
|
template<typename T>
|
|
template<typename T>
|
|
bool fast_is() const = delete;
|
|
bool fast_is() const = delete;
|
|
|
|
|
|
- virtual StringView class_name() const override { return "Environment"sv; }
|
|
|
|
-
|
|
|
|
// This flag is set on the entire variable environment chain when direct eval() is performed.
|
|
// This flag is set on the entire variable environment chain when direct eval() is performed.
|
|
// It is used to disable non-local variable access caching.
|
|
// It is used to disable non-local variable access caching.
|
|
bool is_permanently_screwed_by_eval() const { return m_permanently_screwed_by_eval; }
|
|
bool is_permanently_screwed_by_eval() const { return m_permanently_screwed_by_eval; }
|