1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 17:58:12 +00:00
serenity/Userland/Libraries/LibJS
Andreas Kling 9d49a5478a LibJS: Start implementing spec-compliant variable bindings
This patch adds the concept of variable bindings to the various
environment record classes. The bindings are not yet hooked up to
anything, this is just fleshing out all the operations.

Most of this is following the spec exactly, but in a few cases we are
missing the requisite abstract operations to do the exact right thing.
I've added FIXME's in those cases where I noticed it.
2021-06-23 12:50:21 +02:00
..
Bytecode LibJS: Remove direct argument loading since it was buggy 2021-06-22 22:20:17 +02:00
Heap LibJS: Don't generate unused HeapBlock names on non-SerenityOS systems 2021-06-13 19:11:29 +02:00
Runtime LibJS: Start implementing spec-compliant variable bindings 2021-06-23 12:50:21 +02:00
Tests LibJS: Correct behaviour of direct vs. indirect eval 2021-06-23 09:38:33 +01:00
AST.cpp LibJS: Correct behaviour of direct vs. indirect eval 2021-06-23 09:38:33 +01:00
AST.h LibJS: Remove direct argument loading since it was buggy 2021-06-22 22:20:17 +02:00
CMakeLists.txt LibJS: Make put_own_property_by_index closer to spec 2021-06-22 20:49:28 +01:00
Console.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
Console.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Forward.h LibJS: Begin implementing GlobalEnvironmentRecord 2021-06-22 18:44:53 +02:00
Interpreter.cpp LibJS: Begin implementing GlobalEnvironmentRecord 2021-06-22 18:44:53 +02:00
Interpreter.h LibJS: Split the per-call-frame environment into lexical and variable 2021-06-22 18:44:53 +02:00
Lexer.cpp LibJS: Disallow whitespace or comments between regex literal and flags 2021-06-22 14:08:40 +01:00
Lexer.h Userland: Allow building SerenityOS with -funsigned-char 2021-06-13 18:52:58 +02:00
MarkupGenerator.cpp LibJS: Avoid lots of string-to-int during global object construction 2021-06-13 19:11:29 +02:00
MarkupGenerator.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Parser.cpp LibJS: Correct behaviour of direct vs. indirect eval 2021-06-23 09:38:33 +01:00
Parser.h LibJS: Correct behaviour of direct vs. indirect eval 2021-06-23 09:38:33 +01:00
SourceRange.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
SyntaxHighlighter.cpp LibWeb+LibSyntax: Implement nested syntax highlighters 2021-06-07 14:45:49 +04:30
SyntaxHighlighter.h LibWeb+LibSyntax: Implement nested syntax highlighters 2021-06-07 14:45:49 +04:30
Token.cpp LibJS: Use the new is_ascii_foo() helpers from AK 2021-06-13 19:11:29 +02:00
Token.h Everywhere: Use s.unverwerth@serenityos.org :^) 2021-05-29 12:30:08 +01:00