• anlumo@feddit.de
      link
      fedilink
      English
      arrow-up
      13
      arrow-down
      2
      ·
      9 months ago
      let bar: Result<T, E> = ...;
      let foo = bar.inspect(|value| log::debug("{}", value));
      

      is equivalent to

      let bar: Result<T, E> = ...;
      let foo = bar.map(|value| {
          log::debug("{}", value);
          value
      });
      
    • GissaMittJobb@lemmy.ml
      link
      fedilink
      arrow-up
      2
      ·
      9 months ago

      Looks vaguely like Stream::peek from Java, I think? There’s an equivalent method in Iterator::inspect.

    • owsei@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      9 months ago

      it’s just a way to use map with a reference instead of the value, by what I understood.

      could be usefull for logging values in a Result so you can see it. However I think you can already do that by just mapping and returning the variable.