public Folder(string name, IFolder parent)
 {
     Relative = new RelativeFolder(name);
     if (parent.Absolute != null)
     {
         Absolute = new AbsoluteFolder(Path.Combine(parent.Absolute.FullPath, name));
     }
 }
        public static RenderSettings DefaultFile(AbsoluteFolder rootFolder)
        {
            var outputFolder = new Folder(rootFolder, new RelativeFolder("output"));
            var sourceFolder = new Folder(rootFolder);

            return(new RenderSettings
            {
                SourceFolder = sourceFolder,
                OutputFolder = outputFolder,
                MarkdownFolder = new Folder(outputFolder.Absolute, new RelativeFolder("markdown")),
                CssFolder = new Folder(outputFolder.Absolute, new RelativeFolder("css")),
                JavascriptFolder = new Folder(outputFolder.Absolute, new RelativeFolder("javascript")),
                ImageFolder = new Folder(outputFolder.Absolute, new RelativeFolder("image")),
                SettingsFile = new File(sourceFolder, "settings.toml"),
            });
        }
 public Folder(AbsoluteFolder absoluteFolder)
 {
     Relative = null;
     Absolute = absoluteFolder;
 }
 public Folder(AbsoluteFolder absolute, RelativeFolder relative)
 {
     Absolute = new AbsoluteFolder(Path.Combine(absolute.FullPath, relative.Name));
     Relative = relative;
 }