#[non_exhaustive]pub enum WorkflowErrorCode {
Show 28 variants
FormatUnsupported,
StructureIncomplete,
UnreachableNode,
CannotTerminate,
PluginUnavailable,
DefinitionConflict,
NoMatchingTransition,
GuardTypeError,
TransitionPersistFailed,
GuardSideEffect,
InstanceNotFound,
GuardEvalFailed,
OptimisticLockConflict,
NoCandidates,
WithdrawNotFirstNode,
UnauthorizedHandle,
InstanceNotHandleable,
TaskNotHandleable,
AddSignTargetInvalid,
CapabilityNotFound,
CapabilityTimeout,
CandidateFormatError,
PluginOutputSchemaFailed,
InstanceSuspended,
NotAdmin,
IllegalStatusTransition,
DefinitionNotFound,
VersionNotFound,
}Expand description
工作流引擎错误码,覆盖 WF_001~WF_051,按功能分区。
| 区段 | 功能 | 数量 |
|---|---|---|
| WF_001-009 | 定义加载 | 5 |
| WF_010-019 | 状态机 | 5 |
| WF_020-029 | 审批流 | 5 |
| WF_030-039 | 插件节点 | 4 |
| WF_040-049 | 实例管理 | 3 |
| WF_050-099 | 设计器 API | 2 |
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
FormatUnsupported
WF_001:定义格式不支持或解析失败
StructureIncomplete
WF_002:定义结构不完整(缺必需字段/节点)
UnreachableNode
WF_003:存在不可达节点(Warning 级)
CannotTerminate
WF_004:流程无法终止(无 end 节点或存在无法到达 end 的节点)
WF_005:插件节点引用的插件未启用或命名规范违规
DefinitionConflict
WF_006:定义冲突(同 flow_key+version 已存在)
NoMatchingTransition
WF_010:无匹配迁移(当前状态不接受该事件)
GuardTypeError
WF_011:守卫表达式求值类型错误(非布尔)
TransitionPersistFailed
WF_012:迁移持久化失败
GuardSideEffect
WF_013:守卫表达式含副作用调用
InstanceNotFound
WF_014:实例不存在
GuardEvalFailed
WF_015:守卫求值失败(引用不存在字段等)
OptimisticLockConflict
WF_016:乐观锁冲突(实例版本号不匹配)
NoCandidates
WF_020:候选人为空集合
WithdrawNotFirstNode
WF_021:撤回非首个审批节点
WF_022:越权办理(actor 不属于候选人集合)
InstanceNotHandleable
WF_023:实例非 running 状态,不可办理
TaskNotHandleable
WF_024:任务非 pending 状态,不可办理
AddSignTargetInvalid
WF_026:加签目标非法
CapabilityNotFound
WF_030:能力不存在
CapabilityTimeout
WF_031:能力调用超时
CandidateFormatError
WF_032:候选人能力返回格式错误(非数组)
PluginOutputSchemaFailed
WF_033:插件节点输出 Schema 校验失败
InstanceSuspended
WF_040:实例已挂起,拒绝事件与办理
NotAdmin
WF_041:非管理员无权操作
IllegalStatusTransition
WF_042:实例状态非法转换
DefinitionNotFound
WF_050:定义不存在(导出/查询时)
VersionNotFound
WF_051:版本不存在(设置生效版本时)
Implementations§
Trait Implementations§
Source§impl Clone for WorkflowErrorCode
impl Clone for WorkflowErrorCode
impl Copy for WorkflowErrorCode
Source§impl Debug for WorkflowErrorCode
impl Debug for WorkflowErrorCode
Source§impl<'de> Deserialize<'de> for WorkflowErrorCode
impl<'de> Deserialize<'de> for WorkflowErrorCode
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for WorkflowErrorCode
impl Display for WorkflowErrorCode
impl Eq for WorkflowErrorCode
Source§impl Hash for WorkflowErrorCode
impl Hash for WorkflowErrorCode
Source§impl PartialEq for WorkflowErrorCode
impl PartialEq for WorkflowErrorCode
Source§impl Serialize for WorkflowErrorCode
impl Serialize for WorkflowErrorCode
impl StructuralPartialEq for WorkflowErrorCode
Auto Trait Implementations§
impl Freeze for WorkflowErrorCode
impl RefUnwindSafe for WorkflowErrorCode
impl Send for WorkflowErrorCode
impl Sync for WorkflowErrorCode
impl Unpin for WorkflowErrorCode
impl UnsafeUnpin for WorkflowErrorCode
impl UnwindSafe for WorkflowErrorCode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
impl<T> Scalar for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.