1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:38:10 +00:00

LibSQL: Add the 'extend' operation to the Tuple class

Tuple::extend is similar to the Vector method of the same name; it
concatenates a second Tuple to the current one.
This commit is contained in:
Jan de Visser 2021-11-02 16:34:05 -04:00 committed by Andreas Kling
parent f3a9d61891
commit c2c47fb9bb
2 changed files with 10 additions and 0 deletions

View file

@ -132,6 +132,15 @@ Tuple& Tuple::operator+=(Value const& value)
return *this;
}
void Tuple::extend(Tuple const& other)
{
VERIFY((descriptor()->size() == size()) || (descriptor()->size() >= size() + other.size()));
if (descriptor()->size() == size()) {
descriptor()->extend(other.descriptor());
}
m_data.extend(other.m_data);
}
bool Tuple::is_compatible(Tuple const& other) const
{
if ((m_descriptor->size() == 0) && (other.m_descriptor->size() == 0)) {