jtr/DevDisciples.Json.Tools/Json2CSharpTranslator.ClassTranslation.cs
2024-09-15 17:23:27 +02:00

27 lines
784 B
C#

using Humanizer;
namespace DevDisciples.Json.Tools;
public static partial class Json2CSharpTranslator
{
public struct ClassTranslation : ITranslation
{
public string Name { get; set; }
public List<PropertyTranslation> Properties { get; set; }
public void Translate(Context context)
{
context.Builder.Append($"public class {Name.Pascalize()}\n");
context.Builder.Append("{\n");
var last = Properties.Last();
foreach (var property in Properties)
{
property.Translate(context);
context.Builder.Append(property.Equals(last) ? string.Empty : "\n");
}
context.Builder.Append("}\n");
}
}
}