oxidized 5.0.0 oxidized: ^5.0.0 copied to clipboard
Definitions of Rust-like types, Option and Result, to promote safer programming.
Change Log #
All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning. This file follows the convention described at Keep a Changelog.
[5.0.0] - 2021-08-11 #
Changed #
- BREAKING CHANGE: can no longer pass
null
toResult
. The rectifies the inconsistent handling of null values with regards toOption
andResult
. - kranfix: refactored
Option<T extends Object>
to fixResult<int?, Exception>.ok(null).ok()
- kranfix: refactored
Result<T extends Object, E extends Object>
to fixResult<int?, Exception>.ok(null)
[4.2.0] - 2021-04-30 #
Added #
- lemunozm: added
isSome()
,isNone()
toOption
. - lemunozm: added
isOk()
,isErr()
toResult
. - lemunozm: added
Option.from()
andOption.toNullable()
to make easy conversions with nullable values. - Added a
Unit
type that is similar to Rust's()
type.
[4.1.0] - 2021-03-09 #
Changed #
- lemunozm: return values added to
match()
,when()
inResult
,Option
.
[3.0.0] - 2020-03-18 #
Changed #
- BREAKING CHANGES: see below for the details.
- The
Result
"ok" and "error" values are full-fledged classes now. - The
Option
"some" and "none" values are full-fledged classes now. Option.isSome()
andOption.isNone()
are gone, useis Some
andis None
.Result.isOk()
andResult.isErr()
are gone, useis Ok
andis Err
.- The default
Result
constructor has been renamed toof()
instead. - Passing
null
to theOption.some()
factory constructor will yield aNone
. - Both the
Ok
andErr
subclasses ofResult
allow for null arguments.