steady 1.1.0
steady: ^1.1.0 copied to clipboard
A Result type library for Dart inspired by Rust's Result<T, E>. Provides type-safe error handling with rich utility methods.
1.1.0 #
Result.expectが元の例外型/スタックを保持したまま再送出するよう変更Resultのmap/mapAsync/andThen(Async)/orElse(Async)/recover(Async)/mapErr(Async)で、コールバックがE型を投げた場合はErrに包み、それ以外の例外は再throwするよう挙動を明確化Option.expectがStateErrorを投げるように変更- ドキュメントを上記挙動に合わせて更新
- 例外ラップ/伝播のテストケースを追加
1.0.1 #
foldメソッドを名前付き引数に変更
1.0.0 #
初回リリース
機能 #
Result型
RustのResult<T, E>にインスパイアされた型安全なエラーハンドリング
- 基本操作:
ok/errorによる成功/失敗の表現、unwrap/unwrapOr/expectによる値の取得 - 変換:
map,mapErrによる値の変換、非同期対応(mapAsync,mapErrAsync) - チェーン処理:
andThen,andThenAsyncによる関数の合成 - エラー回復:
orElse,recoverによるフォールバック処理 - fold操作: 成功/失敗の両ケースを統一的に処理
Option型
RustのOption<T>にインスパイアされた型安全なnull処理
- 基本操作:
some/noneによる値の有無の表現、unwrap/unwrapOr/expectによる値の取得 - 変換:
mapによる値の変換、非同期対応(mapAsync) - チェーン処理:
andThen,andThenAsyncによる関数の合成 - フィルタリング:
filterによる条件に基づく値の絞り込み - フォールバック:
orElseによる代替値の提供 - 型変換:
toResultによるResult型への変換
その他
- Freezedベースのイミュータブルな実装
- パターンマッチング対応
- 包括的なテストカバレッジ(85テストケース)
- MIT License