jtr/DevDisciples.Json.Tools/JsonFormatter.Context.cs
2024-09-16 22:46:53 +02:00

22 lines
749 B
C#

using System.Text;
namespace DevDisciples.Json.Tools;
public static partial class JsonFormatter
{
public class Context
{
public const int DefaultIndentSize = 2;
protected int Depth { get; set; } = 0;
public StringBuilder Builder { get; } = new();
public bool Beautify { get; init; } = false;
public string Indent => new(' ', Depth);
public int IndentSize { get; init; } = DefaultIndentSize;
public string NewLine => Beautify ? "\n" : "";
public string Space => Beautify ? " " : "";
public void IncrementDepth() => Depth += Beautify ? IndentSize : 0;
public void DecrementDepth() => Depth -= Beautify ? IndentSize : 0;
}
}