@@ -194,28 +194,29 @@ def initialize(
194194
195195    fuse : Fuse  |  None  =  None 
196196
197-     if  grid_connections_count  ==  0 :
198-         fuse  =  Fuse (max_current = Current .zero ())
199-         _logger .info (
200-             "No grid connection found for this microgrid. This is normal for an islanded microgrid." 
201-         )
202-     elif  grid_connections_count  >  1 :
203-         raise  RuntimeError (
204-             f"Expected at most one grid connection, got { grid_connections_count }  " 
205-         )
206-     else :
207-         if  grid_connections [0 ].metadata  is  None :
208-             raise  RuntimeError ("Grid metadata is None" )
209- 
210-         if  grid_connections [0 ].metadata .fuse  is  not   None :
211-             fuse  =  Fuse (
212-                 max_current = Current .from_amperes (
213-                     grid_connections [0 ].metadata .fuse .max_current 
214-                 )
197+     match  grid_connections_count :
198+         case  0 :
199+             fuse  =  Fuse (max_current = Current .zero ())
200+             _logger .info (
201+                 "No grid connection found for this microgrid. This is normal for an islanded microgrid." 
215202            )
203+         case  1 :
204+             if  grid_connections [0 ].metadata  is  None :
205+                 raise  RuntimeError ("Grid metadata is None" )
206+ 
207+             if  grid_connections [0 ].metadata .fuse  is  not   None :
208+                 fuse  =  Fuse (
209+                     max_current = Current .from_amperes (
210+                         grid_connections [0 ].metadata .fuse .max_current 
211+                     )
212+                 )
216213
217-         if  fuse  is  None :
218-             _logger .warning ("The grid connection point does not have a fuse" )
214+             if  fuse  is  None :
215+                 _logger .warning ("The grid connection point does not have a fuse" )
216+         case  _:
217+             raise  RuntimeError (
218+                 f"Expected at most one grid connection, got { grid_connections_count }  " 
219+             )
219220
220221    namespace  =  f"grid-{ uuid .uuid4 ()}  " 
221222    formula_pool  =  FormulaEnginePool (
0 commit comments