d-graphviz 0.0.3
Graphviz utility for D
To use this package, run the following command in your project's root directory:
						Manual usage
						
						Put the following dependency into your project's dependences section:
					
d-graphviz
Graphviz utility for D
created by
import std.stdio;
import std.format;
import dgraphviz;
struct A {
    auto toString() {
        return "A\n\"struct\"";
    }
}
void main()
{
    auto g = new Directed;
    A a;
    with (g) {
        node(a, ["shape": "box", "color": "#ff0000"]);
        edge(a, true);
        edge(a, 1, ["style": "dashed", "label": "a-to-1"]);
        edge(true, "foo");
    }
    g.save("simple.dot");
}
and $ dot simple.dot -Tpng -O
practical example
library dependency graph
import std.path;
import std.process;
import dgraphviz;
void main() {
    // set phobos root
    auto dc = environment.get("DC");
    assert(dc != "", "use DUB or set $DC enviroment variable");
    auto which = executeShell("which " ~ dc);
    assert(which.status == 0);
    version(DigitalMars) {
        auto root = which.output.dirName ~ "/../../src/phobos/";
    }
    version(LDC) {
        auto root = which.output.dirName ~ "/../import/";
    }
    // plot std.range dependency graph
    auto g = libraryDependency(root, "std/range", true);
    g.save("range.dot");
}
result $ dot range.dot -Tpng -O
TODO
- use set ops to remove duplicated nodes and edges
 - do string sanity check
 - support subgraph
 
- 0.0.3 released 6 years ago
 - ShigekiKarita/d-graphviz
 - BSL-1.0
 - Copyright © 2018, Shigeki Karita
 
- Authors:
 - Dependencies:
 - none
 - Versions:
 - 
						
Show all 4 versions0.0.3 2019-Sep-27 0.0.2 2019-Sep-26 0.0.1 2018-Feb-11 ~master 2019-Sep-27  - Download Stats:
 - 
						
- 
								
0 downloads today
 - 
								
1 downloads this week
 - 
								
6 downloads this month
 - 
								
412 downloads total
 
 - 
								
 - Score:
 - 1.5
 - Short URL:
 - d-graphviz.dub.pm