Exakat\Tasks\Export::display_dot PHP Method

display_dot() private method

private display_dot ( $V, $E, $root, $level )
    private function display_dot($V, $E, $root, $level = 0)
    {
        $r = '';
        foreach ($V as $id => $v) {
            if (!isset($v['fullcode'])) {
                if (isset($v['code'])) {
                    $v['fullcode'] = $v['code'];
                } elseif (isset($v['analyzer'])) {
                    $v['fullcode'] = $v['analyzer'];
                } else {
                    $v['fullcode'] = 'NO CODE PROVIDED';
                }
            }
            $R = $id . ' [label="' . addslashes($v['fullcode']) . '"';
            if (isset($v['atom'])) {
                $R .= ' shape=box ';
            }
            $R .= "];\n";
            $r .= $R;
        }
        foreach ($E as $start => $e) {
            foreach ($e as $end => $label) {
                if ($label == 'NEXT') {
                    $r .= "{$start} -> {$end} [label=\"{$label}\"  color=green];\n";
                } else {
                    $r .= "{$start} -> {$end} [label=\"{$label}\"];\n";
                }
            }
        }
        $r = " digraph graphname {\n    {$r}\n     }";
        return $r;
    }