parameters: (self, data: bytes, data_offset: int)
docstring: Runs through the data looking for the needle, and yields all offsets
          where the needle is found.
docstring_summary: Runs through the data looking for the needle, and yields all offsets
          where the needle is found.
docstring_tokens: Runs through the data looking for the needle and yields all offsets where the needle is found .
function: def __call__(self, data: bytes, data_offset: int) -> Generator[int, None, None]:
          """Runs through the data looking for the needle, and yields all offsets
          where the needle is found."""
          find_pos = data.find(self.needle)
          while find_pos >= 0:
              if find_pos < self.chunk_size:
                  yield find_pos + data_offset
              find_pos = data.find(self.needle, find_pos + 1)
function_tokens: def __call__ ( self , data : bytes , data_offset : int ) -> Generator [ int , None , None ] : find_pos = data . find ( self . needle ) while find_pos >= 0 : if find_pos < self . chunk_size : yield find_pos + data_offset find_pos = data . find ( self . needle , find_pos + 1 )