Skip to content

Commit 26818d3

Browse files
committed
Format libgraphviz
1 parent 61c66aa commit 26818d3

File tree

1 file changed

+56
-41
lines changed

1 file changed

+56
-41
lines changed

src/libgraphviz/lib.rs

+56-41
Original file line numberDiff line numberDiff line change
@@ -432,15 +432,17 @@ pub trait Labeller<'a,N,E> {
432432
}
433433

434434
impl<'a> LabelText<'a> {
435-
pub fn label<S:IntoCow<'a, str>>(s: S) -> LabelText<'a> {
435+
pub fn label<S: IntoCow<'a, str>>(s: S) -> LabelText<'a> {
436436
LabelStr(s.into_cow())
437437
}
438438

439-
pub fn escaped<S:IntoCow<'a, str>>(s: S) -> LabelText<'a> {
439+
pub fn escaped<S: IntoCow<'a, str>>(s: S) -> LabelText<'a> {
440440
EscStr(s.into_cow())
441441
}
442442

443-
fn escape_char<F>(c: char, mut f: F) where F: FnMut(char) {
443+
fn escape_char<F>(c: char, mut f: F)
444+
where F: FnMut(char)
445+
{
444446
match c {
445447
// not escaping \\, since Graphviz escString needs to
446448
// interpret backslashes; see EscStr above.
@@ -531,29 +533,40 @@ pub enum RenderOption {
531533
}
532534

533535
/// Returns vec holding all the default render options.
534-
pub fn default_options() -> Vec<RenderOption> { vec![] }
536+
pub fn default_options() -> Vec<RenderOption> {
537+
vec![]
538+
}
535539

536540
/// Renders directed graph `g` into the writer `w` in DOT syntax.
537541
/// (Simple wrapper around `render_opts` that passes a default set of options.)
538-
pub fn render<'a, N:Clone+'a, E:Clone+'a, G:Labeller<'a,N,E>+GraphWalk<'a,N,E>, W:Write>(
539-
g: &'a G,
540-
w: &mut W) -> io::Result<()> {
542+
pub fn render<'a,
543+
N: Clone + 'a,
544+
E: Clone + 'a,
545+
G: Labeller<'a, N, E> + GraphWalk<'a, N, E>,
546+
W: Write>
547+
(g: &'a G,
548+
w: &mut W)
549+
-> io::Result<()> {
541550
render_opts(g, w, &[])
542551
}
543552

544553
/// Renders directed graph `g` into the writer `w` in DOT syntax.
545554
/// (Main entry point for the library.)
546-
pub fn render_opts<'a, N:Clone+'a, E:Clone+'a, G:Labeller<'a,N,E>+GraphWalk<'a,N,E>, W:Write>(
547-
g: &'a G,
548-
w: &mut W,
549-
options: &[RenderOption]) -> io::Result<()>
550-
{
551-
fn writeln<W:Write>(w: &mut W, arg: &[&str]) -> io::Result<()> {
555+
pub fn render_opts<'a,
556+
N: Clone + 'a,
557+
E: Clone + 'a,
558+
G: Labeller<'a, N, E> + GraphWalk<'a, N, E>,
559+
W: Write>
560+
(g: &'a G,
561+
w: &mut W,
562+
options: &[RenderOption])
563+
-> io::Result<()> {
564+
fn writeln<W: Write>(w: &mut W, arg: &[&str]) -> io::Result<()> {
552565
for &s in arg { try!(w.write_all(s.as_bytes())); }
553566
write!(w, "\n")
554567
}
555568

556-
fn indent<W:Write>(w: &mut W) -> io::Result<()> {
569+
fn indent<W: Write>(w: &mut W) -> io::Result<()> {
557570
w.write_all(b" ")
558571
}
559572

@@ -657,9 +670,7 @@ mod tests {
657670
}
658671

659672
impl LabelledGraph {
660-
fn new(name: &'static str,
661-
node_labels: Trivial,
662-
edges: Vec<Edge>) -> LabelledGraph {
673+
fn new(name: &'static str, node_labels: Trivial, edges: Vec<Edge>) -> LabelledGraph {
663674
LabelledGraph {
664675
name: name,
665676
node_labels: node_labels.to_opt_strs(),
@@ -671,7 +682,8 @@ mod tests {
671682
impl LabelledGraphWithEscStrs {
672683
fn new(name: &'static str,
673684
node_labels: Trivial,
674-
edges: Vec<Edge>) -> LabelledGraphWithEscStrs {
685+
edges: Vec<Edge>)
686+
-> LabelledGraphWithEscStrs {
675687
LabelledGraphWithEscStrs {
676688
graph: LabelledGraph::new(name, node_labels, edges)
677689
}
@@ -695,52 +707,56 @@ mod tests {
695707
None => LabelStr(id_name(n).name()),
696708
}
697709
}
698-
fn edge_label(&'a self, e: & &'a Edge) -> LabelText<'a> {
710+
fn edge_label(&'a self, e: &&'a Edge) -> LabelText<'a> {
699711
LabelStr(e.label.into_cow())
700712
}
701713
}
702714

703715
impl<'a> Labeller<'a, Node, &'a Edge> for LabelledGraphWithEscStrs {
704-
fn graph_id(&'a self) -> Id<'a> { self.graph.graph_id() }
705-
fn node_id(&'a self, n: &Node) -> Id<'a> { self.graph.node_id(n) }
716+
fn graph_id(&'a self) -> Id<'a> {
717+
self.graph.graph_id()
718+
}
719+
fn node_id(&'a self, n: &Node) -> Id<'a> {
720+
self.graph.node_id(n)
721+
}
706722
fn node_label(&'a self, n: &Node) -> LabelText<'a> {
707723
match self.graph.node_label(n) {
708724
LabelStr(s) | EscStr(s) => EscStr(s),
709725
}
710726
}
711-
fn edge_label(&'a self, e: & &'a Edge) -> LabelText<'a> {
727+
fn edge_label(&'a self, e: &&'a Edge) -> LabelText<'a> {
712728
match self.graph.edge_label(e) {
713729
LabelStr(s) | EscStr(s) => EscStr(s),
714730
}
715731
}
716732
}
717733

718734
impl<'a> GraphWalk<'a, Node, &'a Edge> for LabelledGraph {
719-
fn nodes(&'a self) -> Nodes<'a,Node> {
735+
fn nodes(&'a self) -> Nodes<'a, Node> {
720736
(0..self.node_labels.len()).collect()
721737
}
722-
fn edges(&'a self) -> Edges<'a,&'a Edge> {
738+
fn edges(&'a self) -> Edges<'a, &'a Edge> {
723739
self.edges.iter().collect()
724740
}
725-
fn source(&'a self, edge: & &'a Edge) -> Node {
741+
fn source(&'a self, edge: &&'a Edge) -> Node {
726742
edge.from
727743
}
728-
fn target(&'a self, edge: & &'a Edge) -> Node {
744+
fn target(&'a self, edge: &&'a Edge) -> Node {
729745
edge.to
730746
}
731747
}
732748

733749
impl<'a> GraphWalk<'a, Node, &'a Edge> for LabelledGraphWithEscStrs {
734-
fn nodes(&'a self) -> Nodes<'a,Node> {
750+
fn nodes(&'a self) -> Nodes<'a, Node> {
735751
self.graph.nodes()
736752
}
737-
fn edges(&'a self) -> Edges<'a,&'a Edge> {
753+
fn edges(&'a self) -> Edges<'a, &'a Edge> {
738754
self.graph.edges()
739755
}
740-
fn source(&'a self, edge: & &'a Edge) -> Node {
756+
fn source(&'a self, edge: &&'a Edge) -> Node {
741757
edge.from
742758
}
743-
fn target(&'a self, edge: & &'a Edge) -> Node {
759+
fn target(&'a self, edge: &&'a Edge) -> Node {
744760
edge.to
745761
}
746762
}
@@ -781,8 +797,7 @@ r#"digraph single_node {
781797
#[test]
782798
fn single_edge() {
783799
let labels : Trivial = UnlabelledNodes(2);
784-
let result = test_input(LabelledGraph::new("single_edge", labels,
785-
vec!(edge(0, 1, "E"))));
800+
let result = test_input(LabelledGraph::new("single_edge", labels, vec!(edge(0, 1, "E"))));
786801
assert_eq!(result.unwrap(),
787802
r#"digraph single_edge {
788803
N0[label="N0"];
@@ -795,7 +810,8 @@ r#"digraph single_edge {
795810
#[test]
796811
fn test_some_labelled() {
797812
let labels : Trivial = SomeNodesLabelled(vec![Some("A"), None]);
798-
let result = test_input(LabelledGraph::new("test_some_labelled", labels,
813+
let result = test_input(LabelledGraph::new("test_some_labelled",
814+
labels,
799815
vec![edge(0, 1, "A-1")]));
800816
assert_eq!(result.unwrap(),
801817
r#"digraph test_some_labelled {
@@ -809,8 +825,7 @@ r#"digraph test_some_labelled {
809825
#[test]
810826
fn single_cyclic_node() {
811827
let labels : Trivial = UnlabelledNodes(1);
812-
let r = test_input(LabelledGraph::new("single_cyclic_node", labels,
813-
vec!(edge(0, 0, "E"))));
828+
let r = test_input(LabelledGraph::new("single_cyclic_node", labels, vec!(edge(0, 0, "E"))));
814829
assert_eq!(r.unwrap(),
815830
r#"digraph single_cyclic_node {
816831
N0[label="N0"];
@@ -822,9 +837,9 @@ r#"digraph single_cyclic_node {
822837
#[test]
823838
fn hasse_diagram() {
824839
let labels = AllNodesLabelled(vec!("{x,y}", "{x}", "{y}", "{}"));
825-
let r = test_input(LabelledGraph::new(
826-
"hasse_diagram", labels,
827-
vec!(edge(0, 1, ""), edge(0, 2, ""),
840+
let r = test_input(LabelledGraph::new("hasse_diagram",
841+
labels,
842+
vec!(edge(0, 1, ""), edge(0, 2, ""),
828843
edge(1, 3, ""), edge(2, 3, ""))));
829844
assert_eq!(r.unwrap(),
830845
r#"digraph hasse_diagram {
@@ -856,9 +871,9 @@ r#"digraph hasse_diagram {
856871

857872
let mut writer = Vec::new();
858873

859-
let g = LabelledGraphWithEscStrs::new(
860-
"syntax_tree", labels,
861-
vec!(edge(0, 1, "then"), edge(0, 2, "else"),
874+
let g = LabelledGraphWithEscStrs::new("syntax_tree",
875+
labels,
876+
vec!(edge(0, 1, "then"), edge(0, 2, "else"),
862877
edge(1, 3, ";"), edge(2, 3, ";" )));
863878

864879
render(&g, &mut writer).unwrap();

0 commit comments

Comments
 (0)