From 6364959f89351eba89edba98903cf2d28742c6c6 Mon Sep 17 00:00:00 2001 From: Diana Carvalho Date: Fri, 20 Dec 2024 12:10:38 +0000 Subject: [PATCH] feat: Allow for skip_state_decode_failures in TychoStreamDecoder to be set Took 19 minutes Took 13 seconds Took 6 seconds --- src/evm/decoder.rs | 4 ++++ src/evm/stream.rs | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/src/evm/decoder.rs b/src/evm/decoder.rs index 90556043..12b4cc1e 100644 --- a/src/evm/decoder.rs +++ b/src/evm/decoder.rs @@ -84,6 +84,10 @@ impl TychoStreamDecoder { guard.tokens = tokens; } + pub fn skip_state_decode_failures(&mut self, skip: bool) { + self.skip_state_decode_failures = skip; + } + /// Registers a decoder for a given exchange. /// /// This method maps an exchange identifier to a specific protocol simulation type. diff --git a/src/evm/stream.rs b/src/evm/stream.rs index 0ab91149..f86de6d8 100644 --- a/src/evm/stream.rs +++ b/src/evm/stream.rs @@ -127,6 +127,14 @@ impl ProtocolStreamBuilder { self } + /// Skips state decode failures, allowing the stream to continue processing. It raises a warning + /// instead of panic. + pub fn skip_state_decode_failures(mut self, skip: bool) -> Self { + self.decoder + .skip_state_decode_failures(skip); + self + } + pub async fn build( self, ) -> Result>, StreamError> {