unionvalue 1.1.0
Allows easy creation of immutable union values, a.k.a. sum-types. Example: APICallResult = UnionValue.new(:success, :failure, :timeout) APICallResult.failure.is_failure? #=> true APICallResult.timeout.is_success? #=> false APICallResult.success(12345).data #=> 12345