gendoc.modmgr
D's Module manager
Provides data structures and helper functions to manage
module paths, package names, and which dub package they belong to.
- struct
ModInfo
; - Source file (D's module) information
- string
src
; - Source file with relative path from source root path, or absolute path as external files.
- string
dst
; - Distination file with relative path from target.
- string
dubPkgName
; - Dub package name
- string
pkgName
; - (D's) Package name (eg.
hoge/fuga/piyo.d
->hoge.fuga
) - string
modName
; - Module name (
hoge/fuga/piyo.d
->piyo
) - string
title
; - Title of moduleFirst line of documented module comment. Note that it is NOT strictly same from the DDoc's Sammery section.
- const @property @safe string
fullModuleName
(); - Concatinated package and module name (eg.
hoge/fuga/piyo.d
->hoge.fuga.piyo
) - @safe this(string srcFile);
- Constructor
- struct
PkgInfo
; - Source file (D's package) information
- string
name
; name
of package (eg.hoge/fuga/piyo.d
->fuga
)- string
dubPkgName
; - dub package name
- string
pkgName
; - full package name (eg.
hoge/fuga/piyo.d
->hoge.fuga
) - ModInfo
packageD
; - package.d module information if exists.
ModInfo
- ModInfo[]
modules
; - module informations of package children.
ModInfo
- PkgInfo[]
packages
; - package informations of package children.
- const nothrow @nogc @property @safe bool
hasPackageD
(); true
if package.d module exists- const @property @safe PkgInfo
dup
(); - Duplicate
- @safe void
append
(in PkgInfo[] pkgInfos);
@safe voidappend
(in ref PkgInfo pkgInfo);
@safe voidappend
(in ModInfo[] modInfos); - Append other package information to this information
- @safe void
append
(in ref ModInfo modInfo);
- struct
PackageAndModuleData
; -
- @safe this(ref return scope ModInfo modInfo);
- @safe this(ref return scope PkgInfo d);
- const @safe this(ref return scope const ModInfo modInfo);
- const @safe this(ref return scope const PkgInfo d);
- const @property @safe string
name
(); - const @property @safe bool
isPackage
(); - const @property @safe bool
isModule
(); - const @property @safe bool
isPackageModule
(); - inout @property ref @safe inout(PkgInfo)
packageInfo
(); - inout @property ref @safe inout(ModInfo)
moduleInfo
(); - inout @property @trusted inout(PackageAndModuleData)[]
children
();
- struct
PackageAndModuleRange
; -
- this(PackageAndModuleData[] pkgs);
- this(PkgInfo[] pkgs);
const @safe this(ref return scope const PkgInfo[] pkgs); - inout @property inout(PackageAndModuleData)
front
(); - void
popFront
(); - const @property bool
empty
();
- struct
DubPkgInfo
; -
- string
name
; - string
packageVersion
; - PkgInfo
root
; - string
dir
; - string[]
options
; - @safe this(string dubPkgName, string ver, string rootDir, string[] opts);
- const @property @safe DubPkgInfo
dup
(); - Duplicate
- @trusted PackageAndModuleRange
entries
();
const @trusted const(PackageAndModuleRange)entries
(); - @trusted PackageAndModuleData[]
children
(); - const @trusted const(PackageAndModuleData)[]
children
();
- @safe void
moduleSort
(ref PackageAndModuleData[] datas); - @trusted void
moduleSort
(ref const(PackageAndModuleData)[] datas); - struct
ModuleManager
; -
- @safe void
addSources
(string dubPkgName, string pkgVer, string root, in string[] files, in string[] options); - const @safe bool
hasPackage
(string dubPkgName); - inout ref @safe inout(PkgInfo)
getPackageInfo
(string dubPkgName); - inout ref @safe inout(DubPkgInfo)
getDubPackageInfo
(string dubPkgName); - @safe void
clearSources
(); - @property @safe void
target
(string dstDir); - void
exclude
(in string[] packages, in string[] packagePatterns, in string[] paths, in string[] patterns);