DA.Validation
Daml 模块 DA.Validation 参考文档
DA.Validation
DA.Validation
Validation 类型及相关函数。
模块快照
数据类型
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 类型 m 的 m 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)整理翻译,仅供学习;实现细节以官方最新版本为准。