@@ -7,8 +7,6 @@ use winnow::Parser;
77use crate :: ghci:: parse:: lines:: line_ending_or_eof;
88use crate :: ghci:: parse:: CompilationResult ;
99
10- use super :: GhcMessage ;
11-
1210/// Compilation finished.
1311///
1412/// ```text
@@ -29,7 +27,7 @@ pub struct CompilationSummary {
2927}
3028
3129/// Parse a compilation summary, like `Ok, one module loaded.`.
32- pub fn compilation_summary ( input : & mut & str ) -> PResult < GhcMessage > {
30+ pub fn compilation_summary ( input : & mut & str ) -> PResult < CompilationSummary > {
3331 let result = alt ( (
3432 "Ok" . map ( |_| CompilationResult :: Ok ) ,
3533 "Failed" . map ( |_| CompilationResult :: Err ) ,
@@ -56,10 +54,10 @@ pub fn compilation_summary(input: &mut &str) -> PResult<GhcMessage> {
5654 let _ = " loaded." . parse_next ( input) ?;
5755 let _ = line_ending_or_eof. parse_next ( input) ?;
5856
59- Ok ( GhcMessage :: Summary ( CompilationSummary {
57+ Ok ( CompilationSummary {
6058 result,
6159 modules_loaded,
62- } ) )
60+ } )
6361}
6462
6563#[ cfg( test) ]
@@ -75,60 +73,60 @@ mod tests {
7573 compilation_summary
7674 . parse( "Ok, 123 modules loaded.\n " )
7775 . unwrap( ) ,
78- GhcMessage :: Summary ( CompilationSummary {
76+ CompilationSummary {
7977 result: CompilationResult :: Ok ,
8078 modules_loaded: 123 ,
81- } )
79+ }
8280 ) ;
8381
8482 assert_eq ! (
8583 compilation_summary
8684 . parse( "Ok, no modules loaded.\n " )
8785 . unwrap( ) ,
88- GhcMessage :: Summary ( CompilationSummary {
86+ CompilationSummary {
8987 result: CompilationResult :: Ok ,
9088 modules_loaded: 0 ,
91- } )
89+ }
9290 ) ;
9391
9492 assert_eq ! (
9593 compilation_summary
9694 . parse( "Ok, one module loaded.\n " )
9795 . unwrap( ) ,
98- GhcMessage :: Summary ( CompilationSummary {
96+ CompilationSummary {
9997 result: CompilationResult :: Ok ,
10098 modules_loaded: 1 ,
101- } )
99+ }
102100 ) ;
103101
104102 assert_eq ! (
105103 compilation_summary
106104 . parse( "Ok, six modules loaded.\n " )
107105 . unwrap( ) ,
108- GhcMessage :: Summary ( CompilationSummary {
106+ CompilationSummary {
109107 result: CompilationResult :: Ok ,
110108 modules_loaded: 6 ,
111- } )
109+ }
112110 ) ;
113111
114112 assert_eq ! (
115113 compilation_summary
116114 . parse( "Failed, 7 modules loaded.\n " )
117115 . unwrap( ) ,
118- GhcMessage :: Summary ( CompilationSummary {
116+ CompilationSummary {
119117 result: CompilationResult :: Err ,
120118 modules_loaded: 7 ,
121- } )
119+ }
122120 ) ;
123121
124122 assert_eq ! (
125123 compilation_summary
126124 . parse( "Failed, one module loaded.\n " )
127125 . unwrap( ) ,
128- GhcMessage :: Summary ( CompilationSummary {
126+ CompilationSummary {
129127 result: CompilationResult :: Err ,
130128 modules_loaded: 1 ,
131- } )
129+ }
132130 ) ;
133131
134132 // Negative cases
0 commit comments