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

LibJS: Shrink DeclarativeEnvironment bindings vector to fit

After setting up all the bindings in function_declaration_instantiation,
we now ask DeclarativeEnvironment to do a shrink_to_fit() on its vector
of bindings.

This ends up saving 5.6 MiB on twitter.com/awesomekling :^)
This commit is contained in:
Andreas Kling 2022-11-26 20:33:52 +01:00 committed by Linus Groh
parent d77ce7bae9
commit 2e98c17347
3 changed files with 12 additions and 0 deletions

View file

@ -57,6 +57,8 @@ public:
ThrowCompletionOr<void> set_mutable_binding_direct(VM&, size_t index, Value, bool strict);
ThrowCompletionOr<Value> get_binding_value_direct(VM&, size_t index, bool strict);
void shrink_to_fit();
private:
ThrowCompletionOr<void> initialize_binding_direct(VM&, Binding&, Value);
ThrowCompletionOr<Value> get_binding_value_direct(VM&, Binding&, bool strict);