mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 10:08:12 +00:00
LibJS: Add ThrowableStringBuilder::to_string to create a new String
This wraps around the base class method to throw an OOM completion.
This commit is contained in:
parent
3ad1f250e7
commit
79e81e8a15
2 changed files with 10 additions and 0 deletions
|
@ -42,4 +42,13 @@ ThrowCompletionOr<void> ThrowableStringBuilder::append_code_point(u32 value)
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ThrowCompletionOr<String> ThrowableStringBuilder::to_string() const
|
||||||
|
{
|
||||||
|
auto result = StringBuilder::to_string();
|
||||||
|
if (result.is_error())
|
||||||
|
return m_vm.throw_completion<InternalError>(ErrorType::NotEnoughMemoryToAllocate, length());
|
||||||
|
|
||||||
|
return result.release_value();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,6 +23,7 @@ public:
|
||||||
ThrowCompletionOr<void> append(StringView);
|
ThrowCompletionOr<void> append(StringView);
|
||||||
ThrowCompletionOr<void> append(Utf16View const&);
|
ThrowCompletionOr<void> append(Utf16View const&);
|
||||||
ThrowCompletionOr<void> append_code_point(u32 value);
|
ThrowCompletionOr<void> append_code_point(u32 value);
|
||||||
|
ThrowCompletionOr<String> to_string() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
VM& m_vm;
|
VM& m_vm;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue