pulumi/pkg/eval
joeduffy 79f8b1bef7 Implement a DOT graph converter
This change adds a --dot option to the eval command, which will simply
output the MuGL graph using the DOT language.  This allows you to use
tools like Graphviz to inspect the resulting graph, including using the
`dot` command to generate images (like PNGs and whatnot).

For example, the simple MuGL program:

    class C extends mu.Resource {...}
    class B extends mu.Resource {...}
    class A extends mu.Resource {
        private b: B;
        private c: C;
        constructor() {
            this.b = new B();
            this.c = new C();
        }
    }
    let a = new A();

Results in the following DOT file, from `mu eval --dot`:

    strict digraph {
        Resource0 [label="A"];
        Resource0 -> {Resource1 Resource2}
        Resource1 [label="B"];
        Resource2 [label="C"];
    }

Eventually the auto-generated ResourceN identifiers will go away in
favor of using true object monikers (marapongo/mu#76).
2017-02-09 15:56:15 -08:00
..
rt Implement a DOT graph converter 2017-02-09 15:56:15 -08:00
alloc.go Introduce an <error> type 2017-02-09 12:58:34 -08:00
eval.go Use tokens when printing initialized modules/classes 2017-02-09 15:04:26 -08:00
scope.go Implement graph generation 2017-02-01 08:08:21 -08:00
unwind.go Implement graph generation 2017-02-01 08:08:21 -08:00