Skip to content

Commit d31fe03

Browse files
mgeislerkbknapp
authored andcommitted
refactor: avoid unnecessary '\n' checks when generating help
The code handling help texts with newlines can also handle help texts without newlines.
1 parent 9486f4c commit d31fe03

File tree

1 file changed

+19
-27
lines changed

1 file changed

+19
-27
lines changed

src/app/help.rs

Lines changed: 19 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -413,15 +413,11 @@ impl<'a> Help<'a> {
413413
} else {
414414
sdebugln!("No");
415415
}
416-
if help.contains('\n') {
417-
if let Some(part) = help.lines().next() {
418-
try!(write!(self.writer, "{}", part));
419-
}
420-
for part in help.lines().skip(1) {
421-
try!(write!(self.writer, "\n{}", part));
422-
}
423-
} else {
424-
try!(write!(self.writer, "{}", help));
416+
if let Some(part) = help.lines().next() {
417+
try!(write!(self.writer, "{}", part));
418+
}
419+
for part in help.lines().skip(1) {
420+
try!(write!(self.writer, "\n{}", part));
425421
}
426422
Ok(())
427423
}
@@ -465,26 +461,22 @@ impl<'a> Help<'a> {
465461
} else {
466462
sdebugln!("No");
467463
}
468-
if help.contains('\n') {
469-
if let Some(part) = help.lines().next() {
470-
try!(write!(self.writer, "{}", part));
471-
}
472-
for part in help.lines().skip(1) {
473-
try!(write!(self.writer, "\n"));
474-
if nlh || self.force_next_line {
475-
try!(write!(self.writer, "{}{}{}", TAB, TAB, TAB));
476-
} else if arg.has_switch() {
477-
write_nspaces!(self.writer, self.longest + 12);
478-
} else {
479-
write_nspaces!(self.writer, self.longest + 8);
480-
}
481-
try!(write!(self.writer, "{}", part));
464+
if let Some(part) = help.lines().next() {
465+
try!(write!(self.writer, "{}", part));
466+
}
467+
for part in help.lines().skip(1) {
468+
try!(write!(self.writer, "\n"));
469+
if nlh || self.force_next_line {
470+
try!(write!(self.writer, "{}{}{}", TAB, TAB, TAB));
471+
} else if arg.has_switch() {
472+
write_nspaces!(self.writer, self.longest + 12);
473+
} else {
474+
write_nspaces!(self.writer, self.longest + 8);
482475
}
483-
} else if nlh || self.force_next_line {
484-
try!(write!(self.writer, "{}", help));
476+
try!(write!(self.writer, "{}", part));
477+
}
478+
if !help.contains('\n') && (nlh || self.force_next_line) {
485479
try!(write!(self.writer, "\n"));
486-
} else {
487-
try!(write!(self.writer, "{}", help));
488480
}
489481
Ok(())
490482
}

0 commit comments

Comments
 (0)