mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 22:48:11 +00:00
LibJS: Replace Vector<u16> usage in PrimitiveString wth Utf16String
This commit does not go out of its way to reduce copying of the string data yet, but is a minimum set of changes to compile LibJS after making PrimitiveString hold a Utf16String.
This commit is contained in:
parent
02e7dceb96
commit
c1e99fca1a
11 changed files with 80 additions and 87 deletions
|
@ -8,6 +8,7 @@
|
|||
|
||||
#include <AK/Utf16View.h>
|
||||
#include <LibJS/Runtime/Object.h>
|
||||
#include <LibJS/Runtime/Utf16String.h>
|
||||
|
||||
namespace JS {
|
||||
|
||||
|
@ -15,13 +16,13 @@ class RegExpStringIterator final : public Object {
|
|||
JS_OBJECT(RegExpStringIterator, Object);
|
||||
|
||||
public:
|
||||
static RegExpStringIterator* create(GlobalObject&, Object& regexp_object, Vector<u16> string, bool global, bool unicode);
|
||||
static RegExpStringIterator* create(GlobalObject&, Object& regexp_object, Utf16String string, bool global, bool unicode);
|
||||
|
||||
explicit RegExpStringIterator(Object& prototype, Object& regexp_object, Vector<u16> string, bool global, bool unicode);
|
||||
explicit RegExpStringIterator(Object& prototype, Object& regexp_object, Utf16String string, bool global, bool unicode);
|
||||
virtual ~RegExpStringIterator() override = default;
|
||||
|
||||
Object& regexp_object() { return m_regexp_object; }
|
||||
Utf16View string() const { return Utf16View { m_string }; }
|
||||
Utf16View string() const { return m_string.view(); }
|
||||
bool global() const { return m_global; }
|
||||
bool unicode() const { return m_unicode; }
|
||||
|
||||
|
@ -32,7 +33,7 @@ private:
|
|||
virtual void visit_edges(Cell::Visitor&) override;
|
||||
|
||||
Object& m_regexp_object;
|
||||
Vector<u16> m_string;
|
||||
Utf16String m_string;
|
||||
bool m_global { false };
|
||||
bool m_unicode { false };
|
||||
bool m_done { false };
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue