public CommandLineTemplate WithOption(StringTemplate id, StringTemplate value, string prefix = "")
        {
            Assert.IsNotNull(id);
            Assert.IsNotNull(value);
            Assert.IsNotNull(prefix);

            id.Content = prefix + id.Content;
            StringTemplate f = Options.Where(x => x.Key.Content == id.Content).Select(x => x.Key).FirstOrDefault();

            if (f == null)
            {
                Options.Add(id, value);
            }
            else
            {
                Options[f] = value;
            }

            return(this);
        }
 public CommandLineTemplate WithOption(StringTemplate id, object value, string prefix = "")
 {
     Assert.IsNotNull(value);
     return(WithOption(id, value.ToString() ?? string.Empty, prefix));
 }
        public TextFileTemplate(StringTemplate content)
        {
            Assert.IsNotNull(content);

            Content = content;
        }