From cea59b55bab36397e8f18b06999797f409ed6086 Mon Sep 17 00:00:00 2001
From: Armano den Boef <68127614+Rozen4334@users.noreply.github.com>
Date: Wed, 18 May 2022 09:57:37 +0200
Subject: [PATCH] feature: Add Parse & TryParse to EmbedBuilder & Add
ToJsonString extension (#2284)
* Add parse & tryparse to embedbuilder.
* Add tostring extension for embeds
* Modify comments
* Resolve suggestions
* Update src/Discord.Net.Rest/Extensions/StringExtensions.cs
Co-authored-by: Quin Lynch <49576606+quinchs@users.noreply.github.com>
---
.../Entities/Messages/EmbedBuilder.cs | 50 +++++++++++++++++++
.../Extensions/StringExtensions.cs | 47 +++++++++++++++++
2 files changed, 97 insertions(+)
create mode 100644 src/Discord.Net.Rest/Extensions/StringExtensions.cs
diff --git a/src/Discord.Net.Core/Entities/Messages/EmbedBuilder.cs b/src/Discord.Net.Core/Entities/Messages/EmbedBuilder.cs
index 0304120f5..1e2a7b0d7 100644
--- a/src/Discord.Net.Core/Entities/Messages/EmbedBuilder.cs
+++ b/src/Discord.Net.Core/Entities/Messages/EmbedBuilder.cs
@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Collections.Immutable;
using System.Linq;
using Discord.Utils;
+using Newtonsoft.Json;
namespace Discord
{
@@ -155,6 +156,55 @@ namespace Discord
}
}
+ ///
+ /// Tries to parse a string into an .
+ ///
+ /// The json string to parse.
+ /// The with populated values. An empty instance if method returns .
+ /// if was succesfully parsed. if not.
+ public static bool TryParse(string json, out EmbedBuilder builder)
+ {
+ builder = new EmbedBuilder();
+ try
+ {
+ var model = JsonConvert.DeserializeObject