/* * Copyright (c) 2025, Sam Atkins * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include namespace Web::CSS { class FontSourceStyleValue final : public StyleValueWithDefaultOperators { public: struct Local { NonnullRefPtr name; }; using Source = Variant; static ValueComparingNonnullRefPtr create(Source source, Optional format) { return adopt_ref(*new (nothrow) FontSourceStyleValue(move(source), move(format))); } virtual ~FontSourceStyleValue() override; Source const& source() const { return m_source; } Optional const& format() const { return m_format; } virtual String to_string(SerializationMode) const override; bool properties_equal(FontSourceStyleValue const&) const; private: FontSourceStyleValue(Source source, Optional format); Source m_source; Optional m_format; }; }