mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 08:47:34 +00:00
LibJS: Make Environment::put_into_environment() return a success bool
This code is non-conforming and will eventually get cleaned out once we implement proper variable bindings. However, this will aid us in improving other parts of the code right now.
This commit is contained in:
parent
57db058652
commit
80170887db
7 changed files with 10 additions and 9 deletions
|
@ -47,9 +47,10 @@ Optional<Variable> DeclarativeEnvironment::get_from_environment(FlyString const&
|
||||||
return m_variables.get(name);
|
return m_variables.get(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DeclarativeEnvironment::put_into_environment(FlyString const& name, Variable variable)
|
bool DeclarativeEnvironment::put_into_environment(FlyString const& name, Variable variable)
|
||||||
{
|
{
|
||||||
m_variables.set(name, variable);
|
m_variables.set(name, variable);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DeclarativeEnvironment::delete_from_environment(FlyString const& name)
|
bool DeclarativeEnvironment::delete_from_environment(FlyString const& name)
|
||||||
|
|
|
@ -24,7 +24,7 @@ public:
|
||||||
|
|
||||||
// ^Environment
|
// ^Environment
|
||||||
virtual Optional<Variable> get_from_environment(FlyString const&) const override;
|
virtual Optional<Variable> get_from_environment(FlyString const&) const override;
|
||||||
virtual void put_into_environment(FlyString const&, Variable) override;
|
virtual bool put_into_environment(FlyString const&, Variable) override;
|
||||||
virtual bool delete_from_environment(FlyString const&) override;
|
virtual bool delete_from_environment(FlyString const&) override;
|
||||||
|
|
||||||
HashMap<FlyString, Variable> const& variables() const { return m_variables; }
|
HashMap<FlyString, Variable> const& variables() const { return m_variables; }
|
||||||
|
|
|
@ -28,7 +28,7 @@ public:
|
||||||
virtual void initialize(GlobalObject&) override;
|
virtual void initialize(GlobalObject&) override;
|
||||||
|
|
||||||
virtual Optional<Variable> get_from_environment(FlyString const&) const = 0;
|
virtual Optional<Variable> get_from_environment(FlyString const&) const = 0;
|
||||||
virtual void put_into_environment(FlyString const&, Variable) = 0;
|
virtual bool put_into_environment(FlyString const&, Variable) = 0;
|
||||||
virtual bool delete_from_environment(FlyString const&) = 0;
|
virtual bool delete_from_environment(FlyString const&) = 0;
|
||||||
|
|
||||||
virtual bool has_this_binding() const { return false; }
|
virtual bool has_this_binding() const { return false; }
|
||||||
|
|
|
@ -32,10 +32,10 @@ Optional<Variable> GlobalEnvironment::get_from_environment(FlyString const& name
|
||||||
return m_object_record->get_from_environment(name);
|
return m_object_record->get_from_environment(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
void GlobalEnvironment::put_into_environment(FlyString const& name, Variable variable)
|
bool GlobalEnvironment::put_into_environment(FlyString const& name, Variable variable)
|
||||||
{
|
{
|
||||||
// FIXME: This should be a "composite" of the object record and the declarative record.
|
// FIXME: This should be a "composite" of the object record and the declarative record.
|
||||||
m_object_record->put_into_environment(name, variable);
|
return m_object_record->put_into_environment(name, variable);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GlobalEnvironment::delete_from_environment(FlyString const& name)
|
bool GlobalEnvironment::delete_from_environment(FlyString const& name)
|
||||||
|
|
|
@ -17,7 +17,7 @@ public:
|
||||||
explicit GlobalEnvironment(GlobalObject&);
|
explicit GlobalEnvironment(GlobalObject&);
|
||||||
|
|
||||||
virtual Optional<Variable> get_from_environment(FlyString const&) const override;
|
virtual Optional<Variable> get_from_environment(FlyString const&) const override;
|
||||||
virtual void put_into_environment(FlyString const&, Variable) override;
|
virtual bool put_into_environment(FlyString const&, Variable) override;
|
||||||
virtual bool delete_from_environment(FlyString const&) override;
|
virtual bool delete_from_environment(FlyString const&) override;
|
||||||
virtual bool has_this_binding() const final { return true; }
|
virtual bool has_this_binding() const final { return true; }
|
||||||
virtual Value get_this_binding(GlobalObject&) const final;
|
virtual Value get_this_binding(GlobalObject&) const final;
|
||||||
|
|
|
@ -31,9 +31,9 @@ Optional<Variable> ObjectEnvironment::get_from_environment(FlyString const& name
|
||||||
return Variable { value, DeclarationKind::Var };
|
return Variable { value, DeclarationKind::Var };
|
||||||
}
|
}
|
||||||
|
|
||||||
void ObjectEnvironment::put_into_environment(FlyString const& name, Variable variable)
|
bool ObjectEnvironment::put_into_environment(FlyString const& name, Variable variable)
|
||||||
{
|
{
|
||||||
m_binding_object.put(name, variable.value);
|
return m_binding_object.put(name, variable.value);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ObjectEnvironment::delete_from_environment(FlyString const& name)
|
bool ObjectEnvironment::delete_from_environment(FlyString const& name)
|
||||||
|
|
|
@ -21,7 +21,7 @@ public:
|
||||||
ObjectEnvironment(Object& binding_object, IsWithEnvironment, Environment* outer_environment);
|
ObjectEnvironment(Object& binding_object, IsWithEnvironment, Environment* outer_environment);
|
||||||
|
|
||||||
virtual Optional<Variable> get_from_environment(FlyString const&) const override;
|
virtual Optional<Variable> get_from_environment(FlyString const&) const override;
|
||||||
virtual void put_into_environment(FlyString const&, Variable) override;
|
virtual bool put_into_environment(FlyString const&, Variable) override;
|
||||||
virtual bool delete_from_environment(FlyString const&) override;
|
virtual bool delete_from_environment(FlyString const&) override;
|
||||||
|
|
||||||
virtual bool has_binding(FlyString const& name) const override;
|
virtual bool has_binding(FlyString const& name) const override;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue