@@ -75,7 +75,7 @@ impl Production {
7575 let dest = md_link_map
7676 . get ( & self . name )
7777 . map ( |path| path. to_string ( ) )
78- . unwrap_or_else ( || format ! ( "missing" ) ) ;
78+ . unwrap_or_else ( || "missing" . to_string ( ) ) ;
7979 let seq: Sequence < Box < dyn Node > > =
8080 Sequence :: new ( vec ! [ Box :: new( SimpleStart ) , n. unwrap( ) , Box :: new( SimpleEnd ) ] ) ;
8181 let vert = VerticalGrid :: < Box < dyn Node > > :: new ( vec ! [
@@ -105,7 +105,7 @@ impl Expression {
105105 let choices: Vec < _ > = es
106106 . iter ( )
107107 . map ( |e| e. render_railroad ( stack, link_map) )
108- . filter_map ( |n| n )
108+ . flatten ( )
109109 . collect ( ) ;
110110 Box :: new ( Choice :: < Box < dyn Node > > :: new ( choices) )
111111 }
@@ -115,7 +115,7 @@ impl Expression {
115115 let seq: Vec < _ > = es
116116 . iter ( )
117117 . map ( |e| e. render_railroad ( stack, link_map) )
118- . filter_map ( |n| n )
118+ . flatten ( )
119119 . collect ( ) ;
120120 let seq: Sequence < Box < dyn Node > > = Sequence :: new ( seq) ;
121121 Box :: new ( seq)
@@ -138,11 +138,10 @@ impl Expression {
138138 ) {
139139 & es[ ..es. len ( ) - 1 ]
140140 } else {
141- & es [ .. ]
141+ es
142142 } ;
143143
144- let mut breaks: Vec < _ > =
145- es. split ( |e| e. is_break ( ) ) . map ( |es| make_seq ( es) ) . collect ( ) ;
144+ let mut breaks: Vec < _ > = es. split ( |e| e. is_break ( ) ) . map ( & make_seq) . collect ( ) ;
146145 // If there aren't any breaks, don't bother stacking.
147146 if breaks. len ( ) == 1 {
148147 breaks. pop ( ) . unwrap ( )
@@ -229,7 +228,7 @@ fn node_for_nt(link_map: &HashMap<String, String>, name: &str) -> Box<dyn Node>
229228 let dest = link_map
230229 . get ( name)
231230 . map ( |path| path. to_string ( ) )
232- . unwrap_or_else ( || format ! ( "missing" ) ) ;
231+ . unwrap_or_else ( || "missing" . to_string ( ) ) ;
233232 let n = NonTerminal :: new ( name. to_string ( ) ) ;
234233 Box :: new ( Link :: new ( n, dest) )
235234}
0 commit comments