You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Benjamin Bannier <be...@mesosphere.io> on 2018/05/16 22:50:39 UTC

Review Request 67170: WIP: Changed `Result` and `Try` to not errors to `string`.

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/67170/
-----------------------------------------------------------

Review request for mesos.


Repository: mesos


Description
-------

Both `Result` and `Try` provide functions to access the possible
`Error` states via the `error` methods. While their respective error
types are generic, we provided special handling for `Error` error
states which we implictly converted to their string representation.

These added bells ands whistles not only subvert the type system, but
they also make it harder to cleanly propagate error states (e.g., by
requiring to reconstruct error states which can make it harder to
write generic code

    if (some.isError()) {
      return Error(some.error()); // Should just be: return some.error();
    }

Since we now provide a customization point for stringification of
custom error types, this special treatment is neither needed nor
desirable, and we remove it.


Diffs
-----

  3rdparty/stout/include/stout/result.hpp c1387ae957edffc31250b9b236b5f1fd8ff0acd3 
  3rdparty/stout/include/stout/try.hpp 30cce7e27fa040d0ce5a86efc4820f8c39178444 


Diff: https://reviews.apache.org/r/67170/diff/1/


Testing
-------


Thanks,

Benjamin Bannier