mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-29 04:37:55 +00:00
LibWeb: Parse css math constants
This commit is contained in:
@@ -8209,6 +8209,33 @@ ErrorOr<OwnPtr<CalculationNode>> Parser::parse_a_calculation(Vector<ComponentVal
|
||||
}
|
||||
}
|
||||
|
||||
if (value.is(Token::Type::Ident)) {
|
||||
if (value.token().ident().equals_ignoring_ascii_case("e"sv)) {
|
||||
TRY(values.try_append({ TRY(ConstantCalculationNode::create(CalculationNode::ConstantType::E)) }));
|
||||
continue;
|
||||
}
|
||||
|
||||
if (value.token().ident().equals_ignoring_ascii_case("pi"sv)) {
|
||||
TRY(values.try_append({ TRY(ConstantCalculationNode::create(CalculationNode::ConstantType::PI)) }));
|
||||
continue;
|
||||
}
|
||||
|
||||
if (value.token().ident().equals_ignoring_ascii_case("infinity"sv)) {
|
||||
TRY(values.try_append({ TRY(ConstantCalculationNode::create(CalculationNode::ConstantType::Infinity)) }));
|
||||
continue;
|
||||
}
|
||||
|
||||
if (value.token().ident().equals_ignoring_ascii_case("-infinity"sv)) {
|
||||
TRY(values.try_append({ TRY(ConstantCalculationNode::create(CalculationNode::ConstantType::MinusInfinity)) }));
|
||||
continue;
|
||||
}
|
||||
|
||||
if (value.token().ident().equals_ignoring_ascii_case("NaN"sv)) {
|
||||
TRY(values.try_append({ TRY(ConstantCalculationNode::create(CalculationNode::ConstantType::NaN)) }));
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if (value.is(Token::Type::Number)) {
|
||||
TRY(values.try_append({ TRY(NumericCalculationNode::create(value.token().number())) }));
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user