@@ -288,17 +288,13 @@ impl L1Fetcher {
288288 . unwrap ( ) ;
289289 let default_aa_bytecode_hash: H256 =
290290 CallFunctionArgs :: new ( "getL2DefaultAccountBytecodeHash" , ( ) )
291- . with_block ( BlockId :: Number ( BlockNumber :: Number ( U64 :: from (
292- block_to_check,
293- ) ) ) )
291+ . with_block ( BlockId :: Number ( BlockNumber :: Number ( block_to_check) ) )
294292 . for_contract ( self . config . diamond_proxy_addr , & Self :: hyperchain_contract ( ) )
295293 . call ( & self . eth_client )
296294 . await
297295 . unwrap ( ) ;
298296 let packed_protocol_version: U256 = CallFunctionArgs :: new ( "getProtocolVersion" , ( ) )
299- . with_block ( BlockId :: Number ( BlockNumber :: Number ( U64 :: from (
300- block_to_check,
301- ) ) ) )
297+ . with_block ( BlockId :: Number ( BlockNumber :: Number ( block_to_check) ) )
302298 . for_contract ( self . config . diamond_proxy_addr , & Self :: hyperchain_contract ( ) )
303299 . call ( & self . eth_client )
304300 . await
@@ -539,9 +535,9 @@ impl L1Fetcher {
539535
540536 let first_unprocessed_priority_id: U256 =
541537 CallFunctionArgs :: new ( "getFirstUnprocessedPriorityTx" , ( ) )
542- . with_block ( BlockId :: Number ( BlockNumber :: Number ( U64 :: from (
538+ . with_block ( BlockId :: Number ( BlockNumber :: Number (
543539 block_just_after_execute_tx_eth_block,
544- ) ) ) )
540+ ) ) )
545541 . for_contract ( self . config . diamond_proxy_addr , & Self :: hyperchain_contract ( ) )
546542 . call ( & self . eth_client )
547543 . await
@@ -559,10 +555,12 @@ impl L1Fetcher {
559555 RollupEventsFilter :: PriorityOpId ( first_unprocessed_priority_id - 1 ) ,
560556 )
561557 . await
562- . expect ( & format ! (
563- "Unable to find priority tx with id {}" ,
564- first_unprocessed_priority_id - 1
565- ) ) ;
558+ . unwrap_or_else ( || {
559+ panic ! (
560+ "Unable to find priority tx with id {}" ,
561+ first_unprocessed_priority_id - 1
562+ )
563+ } ) ;
566564 L1Tx :: try_from ( log) . unwrap ( )
567565 }
568566
@@ -638,7 +636,7 @@ impl L1Fetcher {
638636 . unwrap ( ) ;
639637 let blocks = L1Fetcher :: process_tx_data (
640638 & functions,
641- & blob_client,
639+ blob_client,
642640 tx,
643641 & self . config . versioning ,
644642 )
@@ -679,11 +677,13 @@ impl L1Fetcher {
679677 . push ( priority_tx. common_data . onchain_data ( ) ) ;
680678 for factory_dep in & priority_tx. execute . factory_deps {
681679 let hashed = BytecodeHash :: for_bytecode ( factory_dep) . value ( ) ;
682- if factory_deps_hashes . contains_key ( & hashed ) {
683- continue ;
684- } else {
685- factory_deps_hashes . insert ( hashed , ( ) ) ;
680+ if let std :: collections :: hash_map :: Entry :: Vacant ( e ) =
681+ factory_deps_hashes . entry ( hashed )
682+ {
683+ e . insert ( ( ) ) ;
686684 block. factory_deps . push ( factory_dep. clone ( ) ) ;
685+ } else {
686+ continue ;
687687 }
688688 }
689689 last_processed_priority_tx += 1 ;
@@ -710,7 +710,7 @@ impl L1Fetcher {
710710 }
711711 current_block = filter_to_block + 1 ;
712712 }
713- return result;
713+ result
714714 }
715715
716716 async fn process_tx_data (
@@ -720,31 +720,31 @@ impl L1Fetcher {
720720 protocol_versioning : & ProtocolVersioning ,
721721 ) -> Result < Vec < CommitBlock > , ParseError > {
722722 let block_number = tx. block_number . unwrap ( ) . as_u64 ( ) ;
723- loop {
724- match parse_calldata (
725- protocol_versioning ,
726- block_number ,
727- & commit_functions ,
728- & tx . input . 0 ,
729- & blob_client ,
730- )
731- . await
732- {
733- Ok ( blks ) => break Ok ( blks ) ,
734- Err ( e ) => {
735- match e . clone ( ) {
736- ParseError :: BlobStorageError ( err ) => {
737- tracing :: error! ( "Blob storage error {err}" ) ;
738- }
739- ParseError :: BlobFormatError ( data, inner) => {
740- tracing :: error! ( "Cannot parse {}: {}" , data , inner ) ;
741- }
742- _ => {
743- tracing :: error! ( "Failed to parse calldata: {e}, encountered on block: {block_number}" ) ;
744- }
723+ match parse_calldata (
724+ protocol_versioning ,
725+ block_number ,
726+ commit_functions ,
727+ & tx . input . 0 ,
728+ blob_client ,
729+ )
730+ . await
731+ {
732+ Ok ( blks ) => Ok ( blks ) ,
733+ Err ( e ) => {
734+ match e . clone ( ) {
735+ ParseError :: BlobStorageError ( err ) => {
736+ tracing :: error! ( "Blob storage error {err}" ) ;
737+ }
738+ ParseError :: BlobFormatError ( data , inner ) => {
739+ tracing :: error! ( "Cannot parse {}: {}" , data, inner) ;
740+ }
741+ _ => {
742+ tracing :: error! (
743+ "Failed to parse calldata: {e}, encountered on block: {block_number}"
744+ ) ;
745745 }
746- return Err ( e) ;
747746 }
747+ return Err ( e) ;
748748 }
749749 }
750750 }
@@ -817,7 +817,7 @@ pub async fn parse_last_committed_l1_batch(
817817
818818 let _new_blocks_data = parsed_input. pop ( ) . unwrap ( ) ;
819819 let stored_block_info = parsed_input. pop ( ) . unwrap ( ) ;
820- return Ok ( StoredBatchInfo :: from_token ( stored_block_info) . unwrap ( ) ) ;
820+ Ok ( StoredBatchInfo :: from_token ( stored_block_info) . unwrap ( ) )
821821}
822822
823823pub async fn parse_calldata (
@@ -936,7 +936,7 @@ mod tests {
936936 sepolia_blob_client, sepolia_initial_state_path, sepolia_l1_client,
937937 sepolia_l1_fetcher, sepolia_versioning,
938938 } ,
939- l1_fetcher :: L1Fetcher ,
939+ fetcher :: L1Fetcher ,
940940 } ,
941941 processor:: { snapshot:: StateCompressor , tree:: TreeProcessor } ,
942942 } ;
0 commit comments