using System; using System.IO; using System.Text; namespace MfGames.Nitride.Contents; /// /// Implements a pure, in-memory text content provider that uses a string /// as the backing store. /// public class StringTextContent : ITextContent { private readonly string buffer; public StringTextContent(StringBuilder buffer) : this(buffer.ToString()) { } public StringTextContent(string buffer) { this.buffer = buffer ?? throw new ArgumentNullException(nameof(buffer)); } public StringTextContent(params string[] lines) : this(string.Join("\n", lines)) { } /// public TextReader GetReader() { return new StringReader(this.buffer); } }