Trait dot::Labeller [] [src]

pub trait Labeller<'a, N, E> {
    fn graph_id(&'a self) -> Id<'a>;
fn node_id(&'a self, n: &N) -> Id<'a>; fn node_shape(&'a self, _node: &N) -> Option<LabelText<'a>> { ... }
fn node_label(&'a self, n: &N) -> LabelText<'a> { ... }
fn edge_label(&'a self, e: &E) -> LabelText<'a> { ... }
fn node_style(&'a self, _n: &N) -> Style { ... }
fn node_color(&'a self, _node: &N) -> Option<LabelText<'a>> { ... }
fn edge_end_arrow(&'a self, _e: &E) -> Arrow { ... }
fn edge_start_arrow(&'a self, _e: &E) -> Arrow { ... }
fn edge_style(&'a self, _e: &E) -> Style { ... }
fn edge_color(&'a self, _e: &E) -> Option<LabelText<'a>> { ... }
fn kind(&self) -> Kind { ... } }

Each instance of a type that implements Label<C> maps to a unique identifier with respect to C, which is used to identify it in the generated .dot file. They can also provide more elaborate (and non-unique) label text that is used in the graphviz rendered output. The graph instance is responsible for providing the DOT compatible identifiers for the nodes and (optionally) rendered labels for the nodes and edges, as well as an identifier for the graph itself.

Required Methods

Must return a DOT compatible identifier naming the graph.

Maps n to a unique identifier with respect to self. The implementer is responsible for ensuring that the returned name is a valid DOT identifier.

Provided Methods

Maps n to one of the graphviz shape names. If None is returned, no shape attribute is specified.

Maps n to a label that will be used in the rendered output. The label need not be unique, and may be the empty string; the default is just the output from node_id.

Maps e to a label that will be used in the rendered output. The label need not be unique, and may be the empty string; the default is in fact the empty string.

Maps n to a style that will be used in the rendered output.

Maps n to one of the graphviz color names. If None is returned, no color attribute is specified.

Maps e to arrow style that will be used on the end of an edge. Defaults to default arrow style.

Maps e to arrow style that will be used on the end of an edge. Defaults to default arrow style.

Maps e to a style that will be used in the rendered output.

Maps e to one of the graphviz color names. If None is returned, no color attribute is specified.

The kind of graph, defaults to Kind::Digraph.

Implementors