mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 01:27:43 +00:00
LibJS: Use PropertyName::from_value() in MemberExpression::computed_property_name()
No need for duplicating this logic.
This commit is contained in:
parent
bc78e4b7da
commit
5feb7e8d28
1 changed files with 3 additions and 16 deletions
|
@ -1549,8 +1549,6 @@ Value ObjectExpression::execute(Interpreter& interpreter, GlobalObject& global_o
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (interpreter.exception())
|
|
||||||
return {};
|
|
||||||
auto value = property.value().execute(interpreter, global_object);
|
auto value = property.value().execute(interpreter, global_object);
|
||||||
if (interpreter.exception())
|
if (interpreter.exception())
|
||||||
return {};
|
return {};
|
||||||
|
@ -1595,22 +1593,11 @@ PropertyName MemberExpression::computed_property_name(Interpreter& interpreter,
|
||||||
ASSERT(m_property->is_identifier());
|
ASSERT(m_property->is_identifier());
|
||||||
return static_cast<const Identifier&>(*m_property).string();
|
return static_cast<const Identifier&>(*m_property).string();
|
||||||
}
|
}
|
||||||
auto index = m_property->execute(interpreter, global_object);
|
auto value = m_property->execute(interpreter, global_object);
|
||||||
if (interpreter.exception())
|
if (interpreter.exception())
|
||||||
return {};
|
return {};
|
||||||
|
ASSERT(!value.is_empty());
|
||||||
ASSERT(!index.is_empty());
|
return PropertyName::from_value(global_object, value);
|
||||||
|
|
||||||
if (index.is_integer() && index.as_i32() >= 0)
|
|
||||||
return index.as_i32();
|
|
||||||
|
|
||||||
if (index.is_symbol())
|
|
||||||
return &index.as_symbol();
|
|
||||||
|
|
||||||
auto index_string = index.to_string(global_object);
|
|
||||||
if (interpreter.exception())
|
|
||||||
return {};
|
|
||||||
return index_string;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
String MemberExpression::to_string_approximation() const
|
String MemberExpression::to_string_approximation() const
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue