1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:58:11 +00:00
serenity/Userland/Libraries/LibJS
Timothy Flynn a0c19deb80 LibJS: Implement RegExpCreate/RegExpInitialize closer to the spec
RegExpInitialize specifies how the pattern string should be created
before passing it to [[RegExpMatcher]]. Rather than passing it as-is,
the string should be converted to code points and back to a "List" (if
the Unicode flag is present), or as a "List" of UTF-16 code units.
Further. the spec requires that we keep both the original pattern string
and this parsed string in the RegExp object.

The caveat is that the LibRegex parser further requires any multi-byte
code units to be escaped (as "\unnnn"). Otherwise, the code unit is
recognized as individual UTF-8 bytes.
2021-07-23 23:06:57 +01:00
..
Bytecode LibJS: Implement RegExpCreate/RegExpInitialize closer to the spec 2021-07-23 23:06:57 +01:00
Heap LibJS: Use IntrusiveList for keeping track of WeakContainers 2021-07-21 20:17:55 +02:00
Runtime LibJS: Implement RegExpCreate/RegExpInitialize closer to the spec 2021-07-23 23:06:57 +01:00
Tests LibJS: Implement Temporal.PlainDate.prototype.inLeapYear 2021-07-23 22:00:23 +01:00
AST.cpp LibJS: Follow the spec more closely when determining the this value 2021-07-20 23:45:28 +02:00
AST.h LibJS: Rework Identifier parsing to match the spec more closely 2021-07-11 21:41:54 +01:00
CMakeLists.txt LibJS: Start implementing Temporal.PlainDateTime 2021-07-22 21:19:40 +01:00
Console.cpp LibJS: Rename CallFrame => ExecutionContext 2021-06-24 19:28:00 +02:00
Console.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Forward.h LibJS: Start implementing Temporal.PlainDateTime 2021-07-22 21:19:40 +01:00
Interpreter.cpp LibJS: Remove the non-standard put helper and replace it's usages 2021-07-06 14:20:30 +01:00
Interpreter.h LibJS: Drop "Record" suffix from all the *Environment record classes 2021-07-01 12:28:57 +02:00
Lexer.cpp LibJS: Implement parsing and evaluation for AssignmentPatterns 2021-07-11 21:41:54 +01:00
Lexer.h LibJS+LibCrypto: Allow '_' as a numeric literal separator :^) 2021-06-26 16:30:35 +02:00
MarkupGenerator.cpp LibJS: Remove the NativeProperty mechanism from LibJS 2021-07-07 21:47:22 +01:00
MarkupGenerator.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Parser.cpp LibJS: Disallow unqualified deletes in strict mode 2021-07-20 23:45:28 +02:00
Parser.h LibJS: Handle strict mode for functions more correctly 2021-07-20 23:45:28 +02:00
SourceRange.h LibJS: Implement parsing and evaluation for AssignmentPatterns 2021-07-11 21:41:54 +01: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: Add TokenType::{Debugger,With} to Token::is_identifier_name() 2021-07-16 21:59:13 +01:00
Token.h LibJS: Implement parsing and evaluation for AssignmentPatterns 2021-07-11 21:41:54 +01:00