mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-06 08:36:15 +00:00
Everywhere: Hoist the Libraries folder to the top-level
This commit is contained in:
committed by
Andreas Kling
parent
950e819ee7
commit
93712b24bf
36
Libraries/LibJS/Bytecode/IdentifierTable.h
Normal file
36
Libraries/LibJS/Bytecode/IdentifierTable.h
Normal file
@@ -0,0 +1,36 @@
|
||||
/*
|
||||
* Copyright (c) 2021, Andreas Kling <andreas@ladybird.org>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <AK/DeprecatedFlyString.h>
|
||||
#include <AK/DistinctNumeric.h>
|
||||
#include <AK/Vector.h>
|
||||
|
||||
namespace JS::Bytecode {
|
||||
|
||||
struct IdentifierTableIndex {
|
||||
bool is_valid() const { return value != NumericLimits<u32>::max(); }
|
||||
u32 value { 0 };
|
||||
};
|
||||
|
||||
class IdentifierTable {
|
||||
AK_MAKE_NONMOVABLE(IdentifierTable);
|
||||
AK_MAKE_NONCOPYABLE(IdentifierTable);
|
||||
|
||||
public:
|
||||
IdentifierTable() = default;
|
||||
|
||||
IdentifierTableIndex insert(DeprecatedFlyString);
|
||||
DeprecatedFlyString const& get(IdentifierTableIndex) const;
|
||||
void dump() const;
|
||||
bool is_empty() const { return m_identifiers.is_empty(); }
|
||||
|
||||
private:
|
||||
Vector<DeprecatedFlyString> m_identifiers;
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user