module diode.driver
Code Map
module diode.driver;
//! Main focal point of Diode.
class DiodeDriver : Driver
{
public:
this(settings: Settings) { }
fn setConfig(source: string, filename: string) { }
fn addBuiltins() { }
fn processDoc() { }
fn addLayout(source: string, filename: string) { }
fn addInclude(source: string, filename: string) { }
fn renderFile(source: string, filename: string, output: string) { }
fn addDoc(source: string, filename: string) { }
fn addDocTemplate(source: string, filename: string) { }
fn verbose(fmt: string) { }
fn info(fmt: string) { }
fn warning(fmt: string) { }
fn addInclude(file: File, filename: string) { }
fn addLayout(file: File, filename: string) { }
fn addDocTemplate(file: File, filename: string) { }
fn renderFileTo(file: File, output: string) { }
protected:
mLayouts: File[string];
mRoot: Set;
mSite: Set;
mVdoc: VdocRoot;
mModules: Array;
mEngine: DriverEngine;
mDocGroup: File;
mDocModule: File;
mDocModules: File;
mVerbose: bool;
mSiteSettings: json.Value;
mPrintUndocumented: bool;
protected:
fn tag(val: Value, parentWithUrl: Parent, prev: Value) { }
fn setUrl(named: Named, parentWithUrl: Named) { }
fn getTag(base: string) string { }
fn getUrl(named: Named, parentWithUrl: Named) string { }
fn getName(dir: string, base: string) string { }
fn createFile(source: string, filename: string) File { }
fn selectType(layout: File, contents: File) Contents { }
fn getAndCheckExt(base: string) File.Ext { }
fn getLayout(key: string) File { }
fn getNeededLayout(file: File) File { }
fn buildRootEnv() { }
}
class DriverEngine : Engine
{
public:
file: File;
public:
this(d: DiodeDriver, root: Set) { }
fn addInclude(f: File, filename: string) { }
fn renderFile(f: File, sink: scope (Sink)) { }
fn handleFilter(n: ir.Node, ident: string, child: Value, args: Value[], sink: scope (Sink)) { }
fn handleInclude(p: ir.Include, e: Set, sink: scope (Sink)) { }
}
//! A file to be rendered. Used for includes and layouts as well.
class File
{
public:
enum Ext
{
HTML,
Markdown,
}
public:
filename: string;
fullName: string;
layout: string;
header: Header;
file: ir.File;
ext: Ext;
public:
this() { }
fn getOption(key: string, def: string) string { }
}
//! Special Value for the contents value.
class Contents : Value
{
public:
engine: DriverEngine;
file: File;
env: Set;
public:
this() { }
fn toText(n: ir.Node, sink: scope (Sink)) { }
}
//! Special Value for Markdown to HTML contents.
class MarkdownContents : Contents
{
public:
this() { }
fn toText(n: ir.Node, sink: scope (Sink)) { }
}
//! Implementation of relative_url filter, appends baseurl.
fn filterRelativeUrl(drv: Driver, str: string) string { }
//! Implementation of absolute_url filter, appends url and baseurl.
fn filterAbsoluteUrl(drv: Driver, str: string) string { }
class DiodeDriver : Driver
Main focal point of Diode.
mTagCounter: u64
Counter for tagging of vdoc objects.
fn filterRelativeUrl(drv: Driver, str: string) string
Implementation of relative_url filter, appends baseurl.
fn filterAbsoluteUrl(drv: Driver, str: string) string
Implementation of absolute_url filter, appends url and baseurl.
class DriverEngine : Engine
class File
A file to be rendered. Used for includes and layouts as well.
class Contents : Value
Special Value for the contents value.
class MarkdownContents : Contents
Special Value for Markdown to HTML contents.