完整文档页面(中文翻译)。文末附有来源说明。

阅读英文版

appdevreferencedaml-standard-libraryda-validation

DA.Validation

Daml 模块 DA.Validation 参考文档

DA.Validation

DA.Validation

Validation 类型及相关函数。

模块快照

稳定。 状态:`active` 引入版本:`3.4.9` 移除版本:`-` 警告数:`0` 弃用数:`0` 弃用自:`-`

数据类型

data Validation err a

Validation 表示非空错误列表或成功值。 相比 Either,可累积多条错误。

构造子:

  • Errors (NonEmpty err)
  • Success a

实例:

  • instance Foldable (Validation err)
  • instance Applicative (Validation err)
  • instance Semigroup (Validation err a)
  • instance Traversable (Validation err)
  • instance Functor (Validation err)
  • instance (Eq err, Eq a) => Eq (Validation err a)
  • instance (Show err, Show a) => Show (Validation err a)

函数

invalid

invalid : err -> Validation err a

因给定原因失败。

ok

ok : a -> Validation err a

以给定值成功。

validate

validate : Either err a -> Validation err a

Either 转为 Validation

run

run : Validation err a -> Either (NonEmpty err) a

Validation err a 转为 Either, 左值为非空错误列表。

run1

run1 : Validation err a -> Either err a

Validation err a 转为 Either, 左值仅取第一个错误。

runWithDefault

runWithDefault : a -> Validation err a -> a

运行 Validation err a,出错时返回默认值。

<?>

<?> : Optional b -> err -> Validation err b

Optional t 转为 Validation err t(或更一般地转为任意 ActionFail 类型 mm t)。

孤立类型类实例

  • instance (Eq err, Eq a) => Eq (Validation err a)

  • instance (Show err, Show a) => Show (Validation err a)

  • instance Functor (Validation err)

  • instance Applicative (Validation err)

  • instance Semigroup (Validation err a)

  • instance Foldable (Validation err)

  • instance Traversable (Validation err)


本文由 CC Privacy Club 根据 Canton Network 官方文档(CC-BY-4.0)整理翻译,仅供学习;实现细节以官方最新版本为准。