about summary refs log tree commit diff
path: root/src/git-rustfmt
diff options
context:
space:
mode:
authorNick Cameron <ncameron@mozilla.com>2018-07-23 14:52:02 +1200
committerNick Cameron <ncameron@mozilla.com>2018-07-23 15:37:34 +1200
commit71d3d04270474ae0afdeeb410fdcc168a54714b7 (patch)
tree3fa5b35afdbddf86bd68a61c43987ab0c24adc74 /src/git-rustfmt
parent4153e66e422fde262bac3d36b82e79af69d01f2d (diff)
factor out a `Session` object
Diffstat (limited to 'src/git-rustfmt')
-rw-r--r--src/git-rustfmt/main.rs12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/git-rustfmt/main.rs b/src/git-rustfmt/main.rs
index 545756576c9..d6ab3661482 100644
--- a/src/git-rustfmt/main.rs
+++ b/src/git-rustfmt/main.rs
@@ -22,7 +22,7 @@ use std::str::FromStr;
 
 use getopts::{Matches, Options};
 
-use rustfmt::{format_input, load_config, CliOptions, Input};
+use rustfmt::{load_config, CliOptions, Input, Session};
 
 fn prune_files(files: Vec<&str>) -> Vec<&str> {
     let prefixes: Vec<_> = files
@@ -73,16 +73,14 @@ fn fmt_files(files: &[&str]) -> i32 {
         load_config::<NullOptions>(Some(Path::new(".")), None).expect("couldn't load config");
 
     let mut exit_code = 0;
+    let mut out = stdout();
+    let mut session = Session::new(config, Some(&mut out));
     for file in files {
-        let (summary, report) = format_input(
-            Input::File(PathBuf::from(file)),
-            &config,
-            Some(&mut stdout()),
-        ).unwrap();
+        let report = session.format(Input::File(PathBuf::from(file))).unwrap();
         if report.has_warnings() {
             eprintln!("{}", report);
         }
-        if !summary.has_no_errors() {
+        if !session.summary.has_no_errors() {
             exit_code = 1;
         }
     }