Function.cpp 711 B

123456789101112131415161718192021222324252627282930313233
  1. /*
  2. * Copyright (c) 2020-2021, the SerenityOS developers.
  3. * Copyright (c) 2021-2023, Sam Atkins <atkinssj@serenityos.org>
  4. *
  5. * SPDX-License-Identifier: BSD-2-Clause
  6. */
  7. #include <LibWeb/CSS/Parser/Function.h>
  8. #include <LibWeb/CSS/Serialize.h>
  9. namespace Web::CSS::Parser {
  10. Function::Function(FlyString name, Vector<ComponentValue>&& values)
  11. : m_name(move(name))
  12. , m_values(move(values))
  13. {
  14. }
  15. Function::~Function() = default;
  16. ErrorOr<String> Function::to_string() const
  17. {
  18. StringBuilder builder;
  19. TRY(serialize_an_identifier(builder, m_name));
  20. TRY(builder.try_append('('));
  21. TRY(builder.try_join(' ', m_values));
  22. TRY(builder.try_append(')'));
  23. return builder.to_string();
  24. }
  25. }