1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-10 04:17:34 +00:00
serenity/Userland/Libraries/LibJS
Linus Groh e46fa3ac8b LibJS: Keep RegExp.exec() results in correct order
By using regex::AllFlags::SkipTrimEmptyMatches we get a null string for
unmatched capture groups, which we then turn into an undefined entry in
the result array instead of putting all matches first and appending
undefined for the remaining number of capture groups - e.g. for

    /foo(ba((r)|(z)))/.exec("foobaz")

we now return

    ["foobaz", "baz", "z", undefined, "z"]

and not [

    ["foobaz", "baz", "z", "z", undefined]

Fixes part of #6042.

Also happens to fix selecting an element by ID using jQuery's $("#foo").
2021-04-03 16:34:34 +02:00
..
Heap LibJS: Fix m_allocations_since_last_gc initialization value 2021-03-28 20:40:22 +02:00
Runtime LibJS: Keep RegExp.exec() results in correct order 2021-04-03 16:34:34 +02:00
Tests LibJS: Keep RegExp.exec() results in correct order 2021-04-03 16:34:34 +02:00
AST.cpp LibJS: Move 'typeof' string functionality from AST to Value 2021-04-02 22:24:30 +02:00
AST.h Only apply auto-naming of function expressions based on syntax 2021-03-22 12:44:07 +01:00
CMakeLists.txt LibJS: Add initial support for Promises 2021-04-02 10:47:40 +02:00
Console.cpp LibJS: Put console dbgln() logging behind #ifdef __serenity__ 2021-03-02 08:36:34 +01:00
Console.h LibJS: Print console.{debug,error,info,log,warn} to system debug log 2021-02-21 21:32:16 +01:00
Forward.h LibJS: Add initial support for Promises 2021-04-02 10:47:40 +02:00
Interpreter.cpp LibJS: Add initial support for Promises 2021-04-02 10:47:40 +02:00
Interpreter.h LibJS: Always inline some tiny Interpreter getters 2021-03-21 21:39:39 +01:00
Lexer.cpp LibJS: Keep track of file names, lines and columns inside the AST 2021-03-01 11:14:36 +01:00
Lexer.h LibJS: Keep track of file names, lines and columns inside the AST 2021-03-01 11:14:36 +01:00
MarkupGenerator.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
MarkupGenerator.h Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Parser.cpp Only apply auto-naming of function expressions based on syntax 2021-03-22 12:44:07 +01:00
Parser.h LibJS: Keep track of file names, lines and columns inside the AST 2021-03-01 11:14:36 +01:00
SourceRange.h LibJS: Keep track of file names, lines and columns inside the AST 2021-03-01 11:14:36 +01:00
SyntaxHighlighter.cpp LibSyntax: Make rehighlight() take Gfx::Palette as by const-reference 2021-02-11 23:52:39 +01:00
SyntaxHighlighter.h LibSyntax: Make rehighlight() take Gfx::Palette as by const-reference 2021-02-11 23:52:39 +01:00
Token.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
Token.h LibJS: Keep track of file names, lines and columns inside the AST 2021-03-01 11:14:36 +01:00