Type constructor for an Unexpected value. This must be used when assigning or passing an unexpected type to an Expect!(T, U)
The expect type can be used to return values and error codes from functions
Can be used to compare for any unexpected, i.e. Expected<U, V> == anyUnexpected
An expected result type
Useful for functions that are expected to return something but could result in an error. The expected type is parameterized over two types - the expected one and the Unexpected. When you want to assign an unexpected type you must use the provided type constructor to make an unexpected assignment.
An Expect!(T, U) type also has a static expected and unexpected methods to create the given Expect!(U, V) with the desired state.