/* * Copyright (c) 2022, Sam Atkins * * SPDX-License-Identifier: BSD-2-Clause */ #include "GeneratorUtil.h" #include #include #include ErrorOr serenity_main(Main::Arguments arguments) { if (arguments.argc != 2) { warnln("usage: {} #include #include namespace Web::CSS { enum class MediaFeatureValueType { Boolean, Integer, Length, Ratio, Resolution, }; enum class MediaFeatureID {)~~~"); json.as_object().for_each_member([&](auto& name, auto&) { auto member_generator = generator.fork(); member_generator.set("name:titlecase", title_casify(name)); member_generator.append(R"~~~( @name:titlecase@,)~~~"); }); generator.append(R"~~~( }; Optional media_feature_id_from_string(StringView); char const* string_from_media_feature_id(MediaFeatureID); bool media_feature_type_is_range(MediaFeatureID); bool media_feature_accepts_type(MediaFeatureID, MediaFeatureValueType); bool media_feature_accepts_identifier(MediaFeatureID, ValueID); } )~~~"); outln("{}", generator.as_string_view()); return 0; }