mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-04-21 03:55:24 +00:00
LibWeb/CSS: Remove now-redundant CalculationNode::to_string()
The main users were the `dump()` functions, which now dump their children instead, which is more correct anyway. The others are for serializing numeric values, so NumericCalculationNode's to_string() is renamed to value_to_string () and used for those for convenience.
This commit is contained in:
parent
5cfb8163c6
commit
5651701f31
Notes:
github-actions[bot]
2025-02-27 20:43:34 +00:00
Author: https://github.com/AtkinsSJ Commit: https://github.com/LadybirdBrowser/ladybird/commit/5651701f317 Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/3719
2 changed files with 42 additions and 291 deletions
|
@ -142,7 +142,7 @@ static String serialize_a_math_function(CalculationNode const& fn, CalculationCo
|
|||
// for its context (if necessary), then serialize the value as normal and return the result.
|
||||
if (fn.type() == CalculationNode::Type::Numeric && serialization_mode == CSSStyleValue::SerializationMode::ResolvedValue) {
|
||||
// FIXME: Clamp the value. Note that we might have an infinite/nan value here.
|
||||
return fn.to_string();
|
||||
return static_cast<NumericCalculationNode const&>(fn).value_to_string();
|
||||
}
|
||||
|
||||
// 2. If fn represents an infinite or NaN value:
|
||||
|
@ -319,7 +319,7 @@ static String serialize_a_calculation_tree(CalculationNode const& root, Calculat
|
|||
// 2. If root is a numeric value, or a non-math function, serialize root per the normal rules for it and return the result.
|
||||
// FIXME: Support non-math functions in calculation trees.
|
||||
if (root.type() == CalculationNode::Type::Numeric)
|
||||
return root.to_string();
|
||||
return static_cast<NumericCalculationNode const&>(root).value_to_string();
|
||||
|
||||
// 3. If root is anything but a Sum, Negate, Product, or Invert node, serialize a math function for the function
|
||||
// corresponding to the node type, treating the node’s children as the function’s comma-separated calculation
|
||||
|
@ -593,7 +593,7 @@ NumericCalculationNode::NumericCalculationNode(NumericValue value, CSSNumericTyp
|
|||
|
||||
NumericCalculationNode::~NumericCalculationNode() = default;
|
||||
|
||||
String NumericCalculationNode::to_string() const
|
||||
String NumericCalculationNode::value_to_string() const
|
||||
{
|
||||
return m_value.visit([](auto& value) { return value.to_string(); });
|
||||
}
|
||||
|
@ -761,19 +761,6 @@ SumCalculationNode::SumCalculationNode(Vector<NonnullRefPtr<CalculationNode>> va
|
|||
|
||||
SumCalculationNode::~SumCalculationNode() = default;
|
||||
|
||||
String SumCalculationNode::to_string() const
|
||||
{
|
||||
bool first = true;
|
||||
StringBuilder builder;
|
||||
for (auto& value : m_values) {
|
||||
if (!first)
|
||||
builder.append(" + "sv);
|
||||
builder.append(value->to_string());
|
||||
first = false;
|
||||
}
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool SumCalculationNode::contains_percentage() const
|
||||
{
|
||||
for (auto const& value : m_values) {
|
||||
|
@ -844,19 +831,6 @@ ProductCalculationNode::ProductCalculationNode(Vector<NonnullRefPtr<CalculationN
|
|||
|
||||
ProductCalculationNode::~ProductCalculationNode() = default;
|
||||
|
||||
String ProductCalculationNode::to_string() const
|
||||
{
|
||||
bool first = true;
|
||||
StringBuilder builder;
|
||||
for (auto& value : m_values) {
|
||||
if (!first)
|
||||
builder.append(" * "sv);
|
||||
builder.append(value->to_string());
|
||||
first = false;
|
||||
}
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool ProductCalculationNode::contains_percentage() const
|
||||
{
|
||||
for (auto const& value : m_values) {
|
||||
|
@ -923,11 +897,6 @@ NegateCalculationNode::NegateCalculationNode(NonnullRefPtr<CalculationNode> valu
|
|||
|
||||
NegateCalculationNode::~NegateCalculationNode() = default;
|
||||
|
||||
String NegateCalculationNode::to_string() const
|
||||
{
|
||||
return MUST(String::formatted("(0 - {})", m_value->to_string()));
|
||||
}
|
||||
|
||||
bool NegateCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -980,11 +949,6 @@ InvertCalculationNode::InvertCalculationNode(NonnullRefPtr<CalculationNode> valu
|
|||
|
||||
InvertCalculationNode::~InvertCalculationNode() = default;
|
||||
|
||||
String InvertCalculationNode::to_string() const
|
||||
{
|
||||
return MUST(String::formatted("(1 / {})", m_value->to_string()));
|
||||
}
|
||||
|
||||
bool InvertCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1033,19 +997,6 @@ MinCalculationNode::MinCalculationNode(Vector<NonnullRefPtr<CalculationNode>> va
|
|||
|
||||
MinCalculationNode::~MinCalculationNode() = default;
|
||||
|
||||
String MinCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("min("sv);
|
||||
for (size_t i = 0; i < m_values.size(); ++i) {
|
||||
if (i != 0)
|
||||
builder.append(", "sv);
|
||||
builder.append(m_values[i]->to_string());
|
||||
}
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool MinCalculationNode::contains_percentage() const
|
||||
{
|
||||
for (auto const& value : m_values) {
|
||||
|
@ -1163,19 +1114,6 @@ MaxCalculationNode::MaxCalculationNode(Vector<NonnullRefPtr<CalculationNode>> va
|
|||
|
||||
MaxCalculationNode::~MaxCalculationNode() = default;
|
||||
|
||||
String MaxCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("max("sv);
|
||||
for (size_t i = 0; i < m_values.size(); ++i) {
|
||||
if (i != 0)
|
||||
builder.append(", "sv);
|
||||
builder.append(m_values[i]->to_string());
|
||||
}
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool MaxCalculationNode::contains_percentage() const
|
||||
{
|
||||
for (auto const& value : m_values) {
|
||||
|
@ -1255,19 +1193,6 @@ ClampCalculationNode::ClampCalculationNode(NonnullRefPtr<CalculationNode> min, N
|
|||
|
||||
ClampCalculationNode::~ClampCalculationNode() = default;
|
||||
|
||||
String ClampCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("clamp("sv);
|
||||
builder.append(m_min_value->to_string());
|
||||
builder.append(", "sv);
|
||||
builder.append(m_center_value->to_string());
|
||||
builder.append(", "sv);
|
||||
builder.append(m_max_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool ClampCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_min_value->contains_percentage() || m_center_value->contains_percentage() || m_max_value->contains_percentage();
|
||||
|
@ -1374,15 +1299,6 @@ AbsCalculationNode::AbsCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
AbsCalculationNode::~AbsCalculationNode() = default;
|
||||
|
||||
String AbsCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("abs("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool AbsCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1414,7 +1330,8 @@ Optional<CalculatedStyleValue::CalculationResult> AbsCalculationNode::run_operat
|
|||
|
||||
void AbsCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}ABS: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}ABS:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool AbsCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -1441,15 +1358,6 @@ SignCalculationNode::SignCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
SignCalculationNode::~SignCalculationNode() = default;
|
||||
|
||||
String SignCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("sign("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool SignCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1499,7 +1407,8 @@ Optional<CalculatedStyleValue::CalculationResult> SignCalculationNode::run_opera
|
|||
|
||||
void SignCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}SIGN: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}SIGN:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool SignCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -1525,15 +1434,6 @@ SinCalculationNode::SinCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
SinCalculationNode::~SinCalculationNode() = default;
|
||||
|
||||
String SinCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("sin("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool SinCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1600,7 +1500,8 @@ Optional<CalculatedStyleValue::CalculationResult> SinCalculationNode::run_operat
|
|||
|
||||
void SinCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}SIN: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}SIN:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool SinCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -1627,15 +1528,6 @@ CosCalculationNode::CosCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
CosCalculationNode::~CosCalculationNode() = default;
|
||||
|
||||
String CosCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("cos("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool CosCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1663,7 +1555,8 @@ Optional<CalculatedStyleValue::CalculationResult> CosCalculationNode::run_operat
|
|||
|
||||
void CosCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}COS: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}COS:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool CosCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -1690,15 +1583,6 @@ TanCalculationNode::TanCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
TanCalculationNode::~TanCalculationNode() = default;
|
||||
|
||||
String TanCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("tan("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool TanCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1726,7 +1610,8 @@ Optional<CalculatedStyleValue::CalculationResult> TanCalculationNode::run_operat
|
|||
|
||||
void TanCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}TAN: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}TAN:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool TanCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -1753,15 +1638,6 @@ AsinCalculationNode::AsinCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
AsinCalculationNode::~AsinCalculationNode() = default;
|
||||
|
||||
String AsinCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("asin("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool AsinCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1831,7 +1707,8 @@ Optional<CalculatedStyleValue::CalculationResult> AsinCalculationNode::run_opera
|
|||
|
||||
void AsinCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}ASIN: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}ASIN:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool AsinCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -1858,15 +1735,6 @@ AcosCalculationNode::AcosCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
AcosCalculationNode::~AcosCalculationNode() = default;
|
||||
|
||||
String AcosCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("acos("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool AcosCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1892,7 +1760,8 @@ Optional<CalculatedStyleValue::CalculationResult> AcosCalculationNode::run_opera
|
|||
|
||||
void AcosCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}ACOS: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}ACOS:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool AcosCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -1919,15 +1788,6 @@ AtanCalculationNode::AtanCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
AtanCalculationNode::~AtanCalculationNode() = default;
|
||||
|
||||
String AtanCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("atan("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool AtanCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_value->contains_percentage();
|
||||
|
@ -1953,7 +1813,8 @@ Optional<CalculatedStyleValue::CalculationResult> AtanCalculationNode::run_opera
|
|||
|
||||
void AtanCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}ATAN: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}ATAN:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool AtanCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -1981,17 +1842,6 @@ Atan2CalculationNode::Atan2CalculationNode(NonnullRefPtr<CalculationNode> y, Non
|
|||
|
||||
Atan2CalculationNode::~Atan2CalculationNode() = default;
|
||||
|
||||
String Atan2CalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("atan2("sv);
|
||||
builder.append(m_y->to_string());
|
||||
builder.append(", "sv);
|
||||
builder.append(m_x->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool Atan2CalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_y->contains_percentage() || m_x->contains_percentage();
|
||||
|
@ -2040,7 +1890,9 @@ Optional<CalculatedStyleValue::CalculationResult> Atan2CalculationNode::run_oper
|
|||
|
||||
void Atan2CalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}ATAN2: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}ATAN2:\n", "", indent);
|
||||
m_x->dump(builder, indent + 2);
|
||||
m_y->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool Atan2CalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -2069,17 +1921,6 @@ PowCalculationNode::PowCalculationNode(NonnullRefPtr<CalculationNode> x, Nonnull
|
|||
|
||||
PowCalculationNode::~PowCalculationNode() = default;
|
||||
|
||||
String PowCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("pow("sv);
|
||||
builder.append(m_x->to_string());
|
||||
builder.append(", "sv);
|
||||
builder.append(m_y->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
CalculatedStyleValue::CalculationResult PowCalculationNode::resolve(CalculationResolutionContext const& context) const
|
||||
{
|
||||
auto node_a = m_x->resolve(context);
|
||||
|
@ -2113,7 +1954,9 @@ Optional<CalculatedStyleValue::CalculationResult> PowCalculationNode::run_operat
|
|||
|
||||
void PowCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}POW: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}POW:\n", "", indent);
|
||||
m_x->dump(builder, indent + 2);
|
||||
m_y->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool PowCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -2141,15 +1984,6 @@ SqrtCalculationNode::SqrtCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
SqrtCalculationNode::~SqrtCalculationNode() = default;
|
||||
|
||||
String SqrtCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("sqrt("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
CalculatedStyleValue::CalculationResult SqrtCalculationNode::resolve(CalculationResolutionContext const& context) const
|
||||
{
|
||||
auto node_a = m_value->resolve(context);
|
||||
|
@ -2182,7 +2016,8 @@ Optional<CalculatedStyleValue::CalculationResult> SqrtCalculationNode::run_opera
|
|||
|
||||
void SqrtCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}SQRT: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}SQRT:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool SqrtCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -2210,19 +2045,6 @@ HypotCalculationNode::HypotCalculationNode(Vector<NonnullRefPtr<CalculationNode>
|
|||
|
||||
HypotCalculationNode::~HypotCalculationNode() = default;
|
||||
|
||||
String HypotCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("hypot("sv);
|
||||
for (size_t i = 0; i < m_values.size(); ++i) {
|
||||
if (i != 0)
|
||||
builder.append(", "sv);
|
||||
builder.append(m_values[i]->to_string());
|
||||
}
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool HypotCalculationNode::contains_percentage() const
|
||||
{
|
||||
for (auto const& value : m_values) {
|
||||
|
@ -2323,17 +2145,6 @@ LogCalculationNode::LogCalculationNode(NonnullRefPtr<CalculationNode> x, Nonnull
|
|||
|
||||
LogCalculationNode::~LogCalculationNode() = default;
|
||||
|
||||
String LogCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("log("sv);
|
||||
builder.append(m_x->to_string());
|
||||
builder.append(", "sv);
|
||||
builder.append(m_y->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
CalculatedStyleValue::CalculationResult LogCalculationNode::resolve(CalculationResolutionContext const& context) const
|
||||
{
|
||||
auto node_a = m_x->resolve(context);
|
||||
|
@ -2368,7 +2179,9 @@ Optional<CalculatedStyleValue::CalculationResult> LogCalculationNode::run_operat
|
|||
|
||||
void LogCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}LOG: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}LOG:\n", "", indent);
|
||||
m_x->dump(builder, indent + 2);
|
||||
m_y->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool LogCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -2396,15 +2209,6 @@ ExpCalculationNode::ExpCalculationNode(NonnullRefPtr<CalculationNode> value)
|
|||
|
||||
ExpCalculationNode::~ExpCalculationNode() = default;
|
||||
|
||||
String ExpCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("exp("sv);
|
||||
builder.append(m_value->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
CalculatedStyleValue::CalculationResult ExpCalculationNode::resolve(CalculationResolutionContext const& context) const
|
||||
{
|
||||
auto node_a = m_value->resolve(context);
|
||||
|
@ -2436,7 +2240,8 @@ Optional<CalculatedStyleValue::CalculationResult> ExpCalculationNode::run_operat
|
|||
|
||||
void ExpCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}EXP: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}EXP:\n", "", indent);
|
||||
m_value->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool ExpCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -2466,19 +2271,6 @@ RoundCalculationNode::RoundCalculationNode(RoundingStrategy mode, NonnullRefPtr<
|
|||
|
||||
RoundCalculationNode::~RoundCalculationNode() = default;
|
||||
|
||||
String RoundCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("round("sv);
|
||||
builder.append(CSS::to_string(m_strategy));
|
||||
builder.append(", "sv);
|
||||
builder.append(m_x->to_string());
|
||||
builder.append(", "sv);
|
||||
builder.append(m_y->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool RoundCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_x->contains_percentage() || m_y->contains_percentage();
|
||||
|
@ -2606,7 +2398,9 @@ Optional<CalculatedStyleValue::CalculationResult> RoundCalculationNode::run_oper
|
|||
|
||||
void RoundCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}ROUND: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}ROUND: {}\n", "", indent, CSS::to_string(m_strategy));
|
||||
m_x->dump(builder, indent + 2);
|
||||
m_y->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool RoundCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -2637,17 +2431,6 @@ ModCalculationNode::ModCalculationNode(NonnullRefPtr<CalculationNode> x, Nonnull
|
|||
|
||||
ModCalculationNode::~ModCalculationNode() = default;
|
||||
|
||||
String ModCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("mod("sv);
|
||||
builder.append(m_x->to_string());
|
||||
builder.append(", "sv);
|
||||
builder.append(m_y->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool ModCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_x->contains_percentage() || m_y->contains_percentage();
|
||||
|
@ -2719,7 +2502,9 @@ Optional<CalculatedStyleValue::CalculationResult> ModCalculationNode::run_operat
|
|||
|
||||
void ModCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}MOD: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}MOD:\n", "", indent);
|
||||
m_x->dump(builder, indent + 2);
|
||||
m_y->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool ModCalculationNode::equals(CalculationNode const& other) const
|
||||
|
@ -2749,17 +2534,6 @@ RemCalculationNode::RemCalculationNode(NonnullRefPtr<CalculationNode> x, Nonnull
|
|||
|
||||
RemCalculationNode::~RemCalculationNode() = default;
|
||||
|
||||
String RemCalculationNode::to_string() const
|
||||
{
|
||||
StringBuilder builder;
|
||||
builder.append("rem("sv);
|
||||
builder.append(m_x->to_string());
|
||||
builder.append(", "sv);
|
||||
builder.append(m_y->to_string());
|
||||
builder.append(")"sv);
|
||||
return MUST(builder.to_string());
|
||||
}
|
||||
|
||||
bool RemCalculationNode::contains_percentage() const
|
||||
{
|
||||
return m_x->contains_percentage() || m_y->contains_percentage();
|
||||
|
@ -2786,7 +2560,9 @@ Optional<CalculatedStyleValue::CalculationResult> RemCalculationNode::run_operat
|
|||
|
||||
void RemCalculationNode::dump(StringBuilder& builder, int indent) const
|
||||
{
|
||||
builder.appendff("{: >{}}REM: {}\n", "", indent, to_string());
|
||||
builder.appendff("{: >{}}REM:\n", "", indent);
|
||||
m_x->dump(builder, indent + 2);
|
||||
m_y->dump(builder, indent + 2);
|
||||
}
|
||||
|
||||
bool RemCalculationNode::equals(CalculationNode const& other) const
|
||||
|
|
|
@ -226,7 +226,6 @@ public:
|
|||
StringView name() const;
|
||||
virtual Vector<NonnullRefPtr<CalculationNode>> children() const = 0;
|
||||
|
||||
virtual String to_string() const = 0;
|
||||
Optional<CSSNumericType> const& numeric_type() const { return m_numeric_type; }
|
||||
virtual bool contains_percentage() const = 0;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const = 0;
|
||||
|
@ -257,7 +256,6 @@ public:
|
|||
static RefPtr<NumericCalculationNode> from_keyword(Keyword, CalculationContext const&);
|
||||
~NumericCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
bool is_in_canonical_unit() const;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
|
@ -267,6 +265,7 @@ public:
|
|||
|
||||
virtual Vector<NonnullRefPtr<CalculationNode>> children() const override { return {}; }
|
||||
NumericValue const& value() const { return m_value; }
|
||||
String value_to_string() const;
|
||||
|
||||
Optional<NonFiniteValue> infinite_or_nan_value() const;
|
||||
bool is_negative() const;
|
||||
|
@ -285,7 +284,6 @@ public:
|
|||
static NonnullRefPtr<SumCalculationNode> create(Vector<NonnullRefPtr<CalculationNode>>);
|
||||
~SumCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -305,7 +303,6 @@ public:
|
|||
static NonnullRefPtr<ProductCalculationNode> create(Vector<NonnullRefPtr<CalculationNode>>);
|
||||
~ProductCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -325,7 +322,6 @@ public:
|
|||
static NonnullRefPtr<NegateCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~NegateCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -346,7 +342,6 @@ public:
|
|||
static NonnullRefPtr<InvertCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~InvertCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -367,7 +362,6 @@ public:
|
|||
static NonnullRefPtr<MinCalculationNode> create(Vector<NonnullRefPtr<CalculationNode>>);
|
||||
~MinCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -388,7 +382,6 @@ public:
|
|||
static NonnullRefPtr<MaxCalculationNode> create(Vector<NonnullRefPtr<CalculationNode>>);
|
||||
~MaxCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -409,7 +402,6 @@ public:
|
|||
static NonnullRefPtr<ClampCalculationNode> create(NonnullRefPtr<CalculationNode>, NonnullRefPtr<CalculationNode>, NonnullRefPtr<CalculationNode>);
|
||||
~ClampCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -432,7 +424,6 @@ public:
|
|||
static NonnullRefPtr<AbsCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~AbsCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -453,7 +444,6 @@ public:
|
|||
static NonnullRefPtr<SignCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~SignCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -474,7 +464,6 @@ public:
|
|||
static NonnullRefPtr<SinCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~SinCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -495,7 +484,6 @@ public:
|
|||
static NonnullRefPtr<CosCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~CosCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -516,7 +504,6 @@ public:
|
|||
static NonnullRefPtr<TanCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~TanCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -537,7 +524,6 @@ public:
|
|||
static NonnullRefPtr<AsinCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~AsinCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -558,7 +544,6 @@ public:
|
|||
static NonnullRefPtr<AcosCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~AcosCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -579,7 +564,6 @@ public:
|
|||
static NonnullRefPtr<AtanCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~AtanCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -600,7 +584,6 @@ public:
|
|||
static NonnullRefPtr<Atan2CalculationNode> create(NonnullRefPtr<CalculationNode>, NonnullRefPtr<CalculationNode>);
|
||||
~Atan2CalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -622,7 +605,6 @@ public:
|
|||
static NonnullRefPtr<PowCalculationNode> create(NonnullRefPtr<CalculationNode>, NonnullRefPtr<CalculationNode>);
|
||||
~PowCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override { return false; }
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -644,7 +626,6 @@ public:
|
|||
static NonnullRefPtr<SqrtCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~SqrtCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override { return false; }
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -665,7 +646,6 @@ public:
|
|||
static NonnullRefPtr<HypotCalculationNode> create(Vector<NonnullRefPtr<CalculationNode>>);
|
||||
~HypotCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -686,7 +666,6 @@ public:
|
|||
static NonnullRefPtr<LogCalculationNode> create(NonnullRefPtr<CalculationNode>, NonnullRefPtr<CalculationNode>);
|
||||
~LogCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override { return false; }
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -708,7 +687,6 @@ public:
|
|||
static NonnullRefPtr<ExpCalculationNode> create(NonnullRefPtr<CalculationNode>);
|
||||
~ExpCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override { return false; }
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -729,7 +707,6 @@ public:
|
|||
static NonnullRefPtr<RoundCalculationNode> create(RoundingStrategy, NonnullRefPtr<CalculationNode>, NonnullRefPtr<CalculationNode>);
|
||||
~RoundCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -754,7 +731,6 @@ public:
|
|||
static NonnullRefPtr<ModCalculationNode> create(NonnullRefPtr<CalculationNode>, NonnullRefPtr<CalculationNode>);
|
||||
~ModCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
@ -776,7 +752,6 @@ public:
|
|||
static NonnullRefPtr<RemCalculationNode> create(NonnullRefPtr<CalculationNode>, NonnullRefPtr<CalculationNode>);
|
||||
~RemCalculationNode();
|
||||
|
||||
virtual String to_string() const override;
|
||||
virtual bool contains_percentage() const override;
|
||||
virtual CalculatedStyleValue::CalculationResult resolve(CalculationResolutionContext const&) const override;
|
||||
virtual NonnullRefPtr<CalculationNode> with_simplified_children(CalculationContext const&, CalculationResolutionContext const&) const override;
|
||||
|
|
Loading…
Add table
Reference in a new issue