@@ -14,7 +14,7 @@ use std::sync::{LazyLock, RwLock};
1414use string_interner:: backend:: StringBackend ;
1515use string_interner:: { DefaultSymbol , StringInterner } ;
1616
17- use crate :: errors:: { GrimpError , GrimpResult } ;
17+ use crate :: errors:: { GrimpError , GrimpResult , ModuleNotPresent } ;
1818use crate :: graph:: higher_order_queries:: Level ;
1919use crate :: graph:: higher_order_queries:: PackageDependency as PyPackageDependency ;
2020use crate :: module_expressions:: ModuleExpression ;
@@ -79,11 +79,11 @@ pub struct GraphWrapper {
7979}
8080
8181impl GraphWrapper {
82- fn get_visible_module_by_name ( & self , name : & str ) -> Result < & Module , GrimpError > {
82+ fn get_visible_module_by_name ( & self , name : & str ) -> Result < & Module , ModuleNotPresent > {
8383 self . _graph
8484 . get_module_by_name ( name)
8585 . filter ( |m| !m. is_invisible ( ) )
86- . ok_or ( GrimpError :: ModuleNotPresent ( name. to_owned ( ) ) )
86+ . ok_or ( ModuleNotPresent ( name. to_owned ( ) ) )
8787 }
8888
8989 fn parse_containers (
@@ -94,10 +94,7 @@ impl GraphWrapper {
9494 . iter ( )
9595 . map ( |name| match self . get_visible_module_by_name ( name) {
9696 Ok ( module) => Ok ( module) ,
97- Err ( GrimpError :: ModuleNotPresent ( _) ) => {
98- Err ( GrimpError :: NoSuchContainer ( name. into ( ) ) ) ?
99- }
100- _ => panic ! ( "unexpected error parsing containers" ) ,
97+ Err ( ModuleNotPresent ( _) ) => Err ( GrimpError :: NoSuchContainer ( name. into ( ) ) ) ?,
10198 } )
10299 . collect :: < Result < HashSet < _ > , GrimpError > > ( )
103100 }
@@ -131,8 +128,7 @@ impl GraphWrapper {
131128 . filter_map ( |name| match self . get_visible_module_by_name ( & name) {
132129 Ok ( module) => Some ( module. token ( ) ) ,
133130 // TODO(peter) Error here? Or silently continue (backwards compatibility?)
134- Err ( GrimpError :: ModuleNotPresent ( _) ) => None ,
135- _ => panic ! ( "unexpected error parsing levels" ) ,
131+ Err ( ModuleNotPresent ( _) ) => None ,
136132 } )
137133 . collect :: < FxHashSet < _ > > ( ) ;
138134
@@ -217,11 +213,7 @@ impl GraphWrapper {
217213 }
218214
219215 pub fn contains_module ( & self , name : & str ) -> bool {
220- match self . get_visible_module_by_name ( name) {
221- Ok ( _) => true ,
222- Err ( GrimpError :: ModuleNotPresent ( _) ) => false ,
223- _ => panic ! ( "unexpected error checking for module existence" ) ,
224- }
216+ self . get_visible_module_by_name ( name) . is_ok ( )
225217 }
226218
227219 #[ pyo3( signature = ( module, is_squashed = false ) ) ]
@@ -311,7 +303,7 @@ impl GraphWrapper {
311303 let module = self
312304 . _graph
313305 . get_module_by_name ( module)
314- . ok_or ( GrimpError :: ModuleNotPresent ( module. to_owned ( ) ) ) ?;
306+ . ok_or ( ModuleNotPresent ( module. to_owned ( ) ) ) ?;
315307 Ok ( self
316308 . _graph
317309 . get_module_children ( module. token ( ) )
@@ -324,7 +316,7 @@ impl GraphWrapper {
324316 let module = self
325317 . _graph
326318 . get_module_by_name ( module)
327- . ok_or ( GrimpError :: ModuleNotPresent ( module. to_owned ( ) ) ) ?;
319+ . ok_or ( ModuleNotPresent ( module. to_owned ( ) ) ) ?;
328320 Ok ( self
329321 . _graph
330322 . get_module_descendants ( module. token ( ) )
0 commit comments