mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-27 18:17:22 +02:00
LibJS: Use FlyString in PropertyKey instead of DeprecatedFlyString
This required dealing with *substantial* fallout.
This commit is contained in:
committed by
Andreas Kling
parent
fc744e3f3f
commit
46a5710238
Notes:
github-actions[bot]
2025-03-24 22:28:26 +00:00
Author: https://github.com/awesomekling Commit: https://github.com/LadybirdBrowser/ladybird/commit/46a57102387 Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/4067 Reviewed-by: https://github.com/trflynn89
@@ -22,11 +22,11 @@ public:
|
||||
// in Table 18 and share the same specifications for all of those methods except for
|
||||
// GetBindingValue, DeleteBinding, HasThisBinding and GetThisBinding.
|
||||
// In addition, module Environment Records support the methods listed in Table 24.
|
||||
virtual ThrowCompletionOr<Value> get_binding_value(VM&, DeprecatedFlyString const& name, bool strict) override;
|
||||
virtual ThrowCompletionOr<bool> delete_binding(VM&, DeprecatedFlyString const& name) override;
|
||||
virtual ThrowCompletionOr<Value> get_binding_value(VM&, FlyString const& name, bool strict) override;
|
||||
virtual ThrowCompletionOr<bool> delete_binding(VM&, FlyString const& name) override;
|
||||
virtual bool has_this_binding() const final { return true; }
|
||||
virtual ThrowCompletionOr<Value> get_this_binding(VM&) const final;
|
||||
ThrowCompletionOr<void> create_import_binding(DeprecatedFlyString name, Module* module, DeprecatedFlyString binding_name);
|
||||
ThrowCompletionOr<void> create_import_binding(FlyString name, Module* module, FlyString binding_name);
|
||||
|
||||
private:
|
||||
explicit ModuleEnvironment(Environment* outer_environment);
|
||||
@@ -34,13 +34,13 @@ private:
|
||||
virtual void visit_edges(Visitor&) override;
|
||||
|
||||
struct IndirectBinding {
|
||||
DeprecatedFlyString name;
|
||||
FlyString name;
|
||||
GC::Ptr<Module> module;
|
||||
DeprecatedFlyString binding_name;
|
||||
FlyString binding_name;
|
||||
};
|
||||
IndirectBinding const* get_indirect_binding(DeprecatedFlyString const& name) const;
|
||||
IndirectBinding const* get_indirect_binding(FlyString const& name) const;
|
||||
|
||||
virtual Optional<BindingAndIndex> find_binding_and_index(DeprecatedFlyString const& name) const override;
|
||||
virtual Optional<BindingAndIndex> find_binding_and_index(FlyString const& name) const override;
|
||||
|
||||
// FIXME: Since we always access this via the name this could be a map.
|
||||
Vector<IndirectBinding> m_indirect_bindings;
|
||||
|
||||
Reference in New Issue
Block a user