Skip to content

Commit 80604fc

Browse files
darinadlercalvaris
authored andcommitted
Simplify some character-related code to ease future changes to Latin1Character
https://bugs.webkit.org/show_bug.cgi?id=299671 rdar://161487282 Reviewed by Sam Weinig. * Source/JavaScriptCore/heap/HeapSnapshotBuilder.cpp: (JSC::edgeTypeToNumber): Deleted. (JSC::HeapSnapshotBuilder::json): Remove call to edgeTypeToNumber function so we can serialize the edge type enumeration as a number. It's not needed because serialization done by StringBuilder::append already serializes enumerations as their underlying= numeric values. * Source/WTF/wtf/HexNumber.cpp: (WTF::Internal::hexDigitsForMode): Moved this function out of the header since it's only used in this file. * Source/WTF/wtf/HexNumber.h: (WTF::Internal::hexDigitsForMode): Deleted. * Source/WebCore/Modules/url-pattern/URLPatternParser.cpp: (WebCore::URLPatternUtilities::escapeRegexStringForCharacters): Use an array of CharacterType rather than an array of char. (WebCore::URLPatternUtilities::escapePatternStringForCharacters): Ditto. Canonical link: https://commits.webkit.org/300658@main Signed-off-by: Xabier Rodriguez Calvar <calvaris@igalia.com>
1 parent b05a6f4 commit 80604fc

3 files changed

Lines changed: 8 additions & 13 deletions

File tree

Source/JavaScriptCore/heap/HeapSnapshotBuilder.cpp

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -351,11 +351,6 @@ enum class NodeFlags {
351351
ObjectSubtype = 1 << 1,
352352
};
353353

354-
static uint8_t edgeTypeToNumber(EdgeType type)
355-
{
356-
return static_cast<uint8_t>(type);
357-
}
358-
359354
static ASCIILiteral edgeTypeToString(EdgeType type)
360355
{
361356
switch (type) {
@@ -530,7 +525,7 @@ void HeapSnapshotBuilder::writeJson(Function<bool (const HeapSnapshotNode&)>&& a
530525
firstEdge = false;
531526

532527
// <fromNodeId>, <toNodeId>, <edgeTypeIndex>, <edgeExtraData>
533-
json.append(edge.from.identifier, ',', edge.to.identifier, ',', edgeTypeToNumber(edge.type), ',');
528+
json.append(edge.from.identifier, ',', edge.to.identifier, ',', edge.type, ',');
534529
switch (edge.type) {
535530
case EdgeType::Property:
536531
case EdgeType::Variable: {

Source/WTF/wtf/HexNumber.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,13 @@ namespace WTF {
2727

2828
namespace Internal {
2929

30+
static const Latin1Character* hexDigitsForMode(HexConversionMode mode)
31+
{
32+
static const Latin1Character lowercaseHexDigits[17] = "0123456789abcdef";
33+
static const Latin1Character uppercaseHexDigits[17] = "0123456789ABCDEF";
34+
return mode == Lowercase ? lowercaseHexDigits : uppercaseHexDigits;
35+
}
36+
3037
std::pair<Latin1Character*, unsigned> appendHex(Latin1Character* buffer, unsigned bufferSize, std::uintmax_t number, unsigned minimumDigits, HexConversionMode mode)
3138
{
3239
auto end = buffer + bufferSize;

Source/WTF/wtf/HexNumber.h

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,6 @@ enum HexConversionMode { Lowercase, Uppercase };
2929

3030
namespace Internal {
3131

32-
inline const Latin1Character* hexDigitsForMode(HexConversionMode mode)
33-
{
34-
static const Latin1Character lowercaseHexDigits[17] = "0123456789abcdef";
35-
static const Latin1Character uppercaseHexDigits[17] = "0123456789ABCDEF";
36-
return mode == Lowercase ? lowercaseHexDigits : uppercaseHexDigits;
37-
}
38-
3932
WTF_EXPORT_PRIVATE std::pair<Latin1Character*, unsigned> appendHex(Latin1Character* buffer, unsigned bufferSize, std::uintmax_t number, unsigned minimumDigits, HexConversionMode);
4033

4134
template<size_t arraySize, typename NumberType>

0 commit comments

Comments
 (0)