@@ -38,54 +38,72 @@ namespace jsonifier {
3838
3939 template <> struct core <discord_core_api::create_global_application_command_data> {
4040 using value_type = discord_core_api::create_global_application_command_data;
41- static constexpr auto parseValue = createValue(" id" , &value_type::id, " application_id" , &value_type::applicationId, " name" , &value_type::name, " description" ,
42- &value_type::description, " type" , &value_type::type, " default_permission" , &value_type::defaultMemberPermissions, " options" , &value_type::options, " version" ,
43- &value_type::version, " guild_id" , &value_type::guildId, " dm_permission" , &value_type::dmPermission, " name_localizations" , &value_type::nameLocalizations,
44- " description_localizations" , &value_type::descriptionLocalizations);
41+ static constexpr auto parseValue = createValue<makeJsonEntity<&value_type::id, " id" >(), makeJsonEntity<&value_type::applicationId, " application_id" >(),
42+ makeJsonEntity<&value_type::name, " name" >(), makeJsonEntity<&value_type::description, " description" >(), makeJsonEntity<&value_type::type, " type" >(),
43+ makeJsonEntity<&value_type::defaultMemberPermissions, " default_permission" >(), makeJsonEntity<&value_type::options, " options" >(),
44+ makeJsonEntity<&value_type::version, " version" >(), makeJsonEntity<&value_type::guildId, " guild_id" >(), makeJsonEntity<&value_type::dmPermission, " dm_permission" >(),
45+ makeJsonEntity<&value_type::nameLocalizations, " name_localizations" >(), makeJsonEntity<&value_type::descriptionLocalizations, " description_localizations" >()>();
4546 };
4647
4748 template <> struct core <discord_core_api::create_guild_application_command_data> {
4849 using value_type = discord_core_api::create_guild_application_command_data;
49- static constexpr auto parseValue = createValue(" id" , &value_type::id, " application_id" , &value_type::applicationId, " name" , &value_type::name, " description" ,
50- &value_type::description, " type" , &value_type::type, " default_permission" , &value_type::defaultMemberPermissions, " options" , &value_type::options, " version" ,
51- &value_type::version, " guild_id" , &value_type::guildId, " dm_permission" , &value_type::dmPermission, " name_localizations" , &value_type::nameLocalizations,
52- " description_localizations" , &value_type::descriptionLocalizations);
50+ static constexpr auto parseValue = createValue<makeJsonEntity<&value_type::id, " id" >(), makeJsonEntity<&value_type::applicationId, " application_id" >(),
51+ makeJsonEntity<&value_type::name, " name" >(), makeJsonEntity<&value_type::description, " description" >(), makeJsonEntity<&value_type::type, " type" >(),
52+ makeJsonEntity<&value_type::defaultMemberPermissions, " default_permission" >(), makeJsonEntity<&value_type::options, " options" >(),
53+ makeJsonEntity<&value_type::version, " version" >(), makeJsonEntity<&value_type::guildId, " guild_id" >(), makeJsonEntity<&value_type::dmPermission, " dm_permission" >(),
54+ makeJsonEntity<&value_type::nameLocalizations, " name_localizations" >(), makeJsonEntity<&value_type::descriptionLocalizations, " description_localizations" >()>();
5355 };
5456
5557 template <> struct core <discord_core_api::bulk_overwrite_global_application_commands_data> {
5658 using value_type = discord_core_api::bulk_overwrite_global_application_commands_data;
57- static constexpr auto parseValue = createValue( " commands " , &value_type::responseData, " application_id " , &value_type::applicationId);
59+ static constexpr auto parseValue = createValue<makeJsonEntity< &value_type::responseData, " commands " >(), makeJsonEntity< &value_type::applicationId, " application_id " >()>( );
5860 };
5961
6062 template <> struct core <discord_core_api::edit_global_application_command_data> {
6163 using value_type = discord_core_api::edit_global_application_command_data;
62- static constexpr auto parseValue = createValue(" name" , &value_type::name, " description" , &value_type::description, " options" , &value_type::options, " default_permission" ,
63- &value_type::defaultMemberPermissions, " name_localization" , &value_type::nameLocalizations, " description_localization" , &value_type::descriptionLocalizations,
64- " application_id" , &value_type::applicationId, " dm_permission" , &value_type::dmPermission);
64+ static constexpr auto parseValue = createValue<makeJsonEntity<&value_type::name, " name" >(), makeJsonEntity<&value_type::description, " description" >(),
65+ makeJsonEntity<&value_type::options, " options" >(), makeJsonEntity<&value_type::defaultMemberPermissions, " default_permission" >(),
66+ makeJsonEntity<&value_type::nameLocalizations, " name_localization" >(), makeJsonEntity<&value_type::descriptionLocalizations, " description_localization" >(),
67+ makeJsonEntity<&value_type::applicationId, " application_id" >(), makeJsonEntity<&value_type::dmPermission, " dm_permission" >()>();
6568 };
6669
6770 template <> struct core <discord_core_api::edit_guild_application_command_data> {
6871 using value_type = discord_core_api::edit_guild_application_command_data;
69- static constexpr auto parseValue = createValue(" description_localizations" , &value_type::descriptionLocalizations, " name_localizations" , &value_type::nameLocalizations,
70- " options" , &value_type::options, " default_permission" , &value_type::defaultMemberPermissions, " description" , &value_type::description, " application_id" ,
71- &value_type::applicationId, " guild_id" , &value_type::guildId, " name" , &value_type::name);
72+ static constexpr auto parseValue = createValue<makeJsonEntity<&value_type::descriptionLocalizations, " description_localizations" >(),
73+ makeJsonEntity<&value_type::nameLocalizations, " name_localizations" >(), makeJsonEntity<&value_type::options, " options" >(),
74+ makeJsonEntity<&value_type::defaultMemberPermissions, " default_permission" >(), makeJsonEntity<&value_type::description, " description" >(),
75+ makeJsonEntity<&value_type::applicationId, " application_id" >(), makeJsonEntity<&value_type::guildId, " guild_id" >(), makeJsonEntity<&value_type::name, " name" >()>();
7276 };
7377
7478 template <> struct core <discord_core_api::bulk_overwrite_guild_application_commands_data> {
7579 using value_type = discord_core_api::bulk_overwrite_guild_application_commands_data;
76- static constexpr auto parseValue = createValue(" commands" , &value_type::responseData, " application_id" , &value_type::applicationId, " guild_id" , &value_type::guildId);
80+ static constexpr auto parseValue = createValue<makeJsonEntity<&value_type::responseData, " commands" >(), makeJsonEntity<&value_type::applicationId, " application_id" >(),
81+ makeJsonEntity<&value_type::guildId, " guild_id" >()>();
7782 };
7883
7984 template <> struct core <discord_core_api::edit_guild_application_command_permissions_data> {
8085 using value_type = discord_core_api::edit_guild_application_command_permissions_data;
81- static constexpr auto parseValue = createValue( " permissions " , &value_type::permissions, " command " , &value_type::commandName, " application_id " , &value_type::applicationId ,
82- " id " , &value_type::commandId, " guild_id " , &value_type::guildId);
86+ static constexpr auto parseValue = createValue<makeJsonEntity< &value_type::permissions, " permissions " >(), makeJsonEntity< &value_type::commandName, " command " >() ,
87+ makeJsonEntity<&value_type::applicationId, " application_id " >(), makeJsonEntity< &value_type::commandId, " id " >(), makeJsonEntity< &value_type::guildId, " guild_id " >()>( );
8388 };
8489
8590 template <> struct core <discord_core_api::batch_edit_guild_application_command_permissions_data> {
8691 using value_type = discord_core_api::batch_edit_guild_application_command_permissions_data;
87- static constexpr auto parseValue = createValue(" permissions" , &value_type::permissions, " application_id" , &value_type::applicationId, " guild_id" , &value_type::guildId);
92+ static constexpr auto parseValue = createValue<makeJsonEntity<&value_type::permissions, " permissions" >(), makeJsonEntity<&value_type::applicationId, " application_id" >(),
93+ makeJsonEntity<&value_type::guildId, " guild_id" >()>();
8894 };
95+
96+ template <> struct core <discord_core_api::application_command_data> {
97+ using value_type = discord_core_api::application_command_data;
98+ static constexpr auto parseValue = createValue<makeJsonEntity<&value_type::descriptionLocalizations, " description_localizations" >(),
99+ makeJsonEntity<&value_type::nameLocalizations, " name_localizations" >(), makeJsonEntity<&value_type::options, " options" >(),
100+ makeJsonEntity<&value_type::defaultMemberPermissions, " default_member_permissions" >(), makeJsonEntity<&value_type::description, " description" >(),
101+ makeJsonEntity<&value_type::type, " type" >(), makeJsonEntity<&value_type::version, " version" >(), makeJsonEntity<&value_type::applicationId, " application_id" >(),
102+ makeJsonEntity<&value_type::name, " name" >(), makeJsonEntity<&value_type::dmPermission, " dm_permission" >(), makeJsonEntity<&value_type::guildId, " guild_id" >(),
103+ makeJsonEntity<&value_type::id, " id" >()>();
104+ };
105+
106+
89107}
90108
91109namespace discord_core_api {
0 commit comments