pub struct ConditionNodeBuilder { /* private fields */ }Expand description
ConditionNode 构建器。
Implementations§
Source§impl ConditionNodeBuilder
impl ConditionNodeBuilder
pub fn branch( self, target: impl Into<String>, condition: impl Fn(&State) -> bool + Send + Sync + 'static, ) -> Self
Sourcepub fn otherwise(self, target: impl Into<String>) -> Self
pub fn otherwise(self, target: impl Into<String>) -> Self
设置兜底目标 — 当所有 branch 条件均不匹配时,跳转到此节点。
解决“边有 fallback,节点没有“的概念不一致问题。
ⓘ
ConditionNode::builder("route")
.branch("fast_path", |s| s.get("score").map(|v| v.as_u64().unwrap_or(0) >= 80))
.branch("slow_path", |s| s.get("score").map(|v| v.as_u64().unwrap_or(0) >= 50))
.otherwise("default") // 兜底
.build()pub fn build(self) -> ConditionNode
Auto Trait Implementations§
impl !RefUnwindSafe for ConditionNodeBuilder
impl !UnwindSafe for ConditionNodeBuilder
impl Freeze for ConditionNodeBuilder
impl Send for ConditionNodeBuilder
impl Sync for ConditionNodeBuilder
impl Unpin for ConditionNodeBuilder
impl UnsafeUnpin for ConditionNodeBuilder
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