wolf_graph_dot/details/
node_shape.rs

1
2#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
3pub enum NodeShape {
4    Box,
5    Polygon,
6    Ellipse,
7    Oval,
8    Circle,
9    Point,
10    Egg,
11    Triangle,
12    Plaintext,
13    Plain,
14    Diamond,
15    Trapezium,
16    Parallelogram,
17    House,
18    Pentagon,
19    Hexagon,
20    Septagon,
21    Octagon,
22    Doublecircle,
23    Doubleoctagon,
24    Tripleoctagon,
25    Invtriangle,
26    Invtrapezium,
27    Invhouse,
28    Mdiamond,
29    Msquare,
30    Mcircle,
31    Rect,
32    Rectangle,
33    Square,
34    Star,
35    None,
36    Underline,
37    Cylinder,
38    Note,
39    Tab,
40    Folder,
41    Box3d,
42    Component,
43    Promoter,
44    Cds,
45    Terminator,
46    Utr,
47    Primersite,
48    Restrictionsite,
49    Fivepoverhang,
50    Threepoverhang,
51    Noverhang,
52    Assembly,
53    Signature,
54    Insulator,
55    Ribosite,
56    Rnastab,
57    Proteasesite,
58    Proteinstab,
59    Rpromoter,
60    Rarrow,
61    Larrow,
62    Lpromoter,
63}
64
65impl std::fmt::Display for NodeShape {
66    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
67        let value = match self {
68            NodeShape::Box => "box",
69            NodeShape::Polygon => "polygon",
70            NodeShape::Ellipse => "ellipse",
71            NodeShape::Oval => "oval",
72            NodeShape::Circle => "circle",
73            NodeShape::Point => "point",
74            NodeShape::Egg => "egg",
75            NodeShape::Triangle => "triangle",
76            NodeShape::Plaintext => "plaintext",
77            NodeShape::Plain => "plain",
78            NodeShape::Diamond => "diamond",
79            NodeShape::Trapezium => "trapezium",
80            NodeShape::Parallelogram => "parallelogram",
81            NodeShape::House => "house",
82            NodeShape::Pentagon => "pentagon",
83            NodeShape::Hexagon => "hexagon",
84            NodeShape::Septagon => "septagon",
85            NodeShape::Octagon => "octagon",
86            NodeShape::Doublecircle => "doublecircle",
87            NodeShape::Doubleoctagon => "doubleoctagon",
88            NodeShape::Tripleoctagon => "tripleoctagon",
89            NodeShape::Invtriangle => "invtriangle",
90            NodeShape::Invtrapezium => "invtrapezium",
91            NodeShape::Invhouse => "invhouse",
92            NodeShape::Mdiamond => "Mdiamond",
93            NodeShape::Msquare => "Msquare",
94            NodeShape::Mcircle => "Mcircle",
95            NodeShape::Rect => "rect",
96            NodeShape::Rectangle => "rectangle",
97            NodeShape::Square => "square",
98            NodeShape::Star => "star",
99            NodeShape::None => "none",
100            NodeShape::Underline => "underline",
101            NodeShape::Cylinder => "cylinder",
102            NodeShape::Note => "note",
103            NodeShape::Tab => "tab",
104            NodeShape::Folder => "folder",
105            NodeShape::Box3d => "box3d",
106            NodeShape::Component => "component",
107            NodeShape::Promoter => "promoter",
108            NodeShape::Cds => "cds",
109            NodeShape::Terminator => "terminator",
110            NodeShape::Utr => "utr",
111            NodeShape::Primersite => "primersite",
112            NodeShape::Restrictionsite => "restrictionsite",
113            NodeShape::Fivepoverhang => "fivepoverhang",
114            NodeShape::Threepoverhang => "threepoverhang",
115            NodeShape::Noverhang => "noverhang",
116            NodeShape::Assembly => "assembly",
117            NodeShape::Signature => "signature",
118            NodeShape::Insulator => "insulator",
119            NodeShape::Ribosite => "ribosite",
120            NodeShape::Rnastab => "rnastab",
121            NodeShape::Proteasesite => "proteasesite",
122            NodeShape::Proteinstab => "proteinstab",
123            NodeShape::Rpromoter => "rpromoter",
124            NodeShape::Rarrow => "rarrow",
125            NodeShape::Larrow => "larrow",
126            NodeShape::Lpromoter => "lpromoter",
127        };
128        write!(f, "{}", value)
129    }
130}