Skip to main content

conditions

Rust AI Agent SDK Conditions Module for PraisonAI Rust SDK Provides condition protocols and implementations for workflow routing. Enables unified condition evaluation across AgentFlow and AgentTeam.

Example

use praisonai::conditions::{ExpressionCondition, DictCondition};

// Expression-based condition
let cond = ExpressionCondition::new("score > 80");
let result = cond.evaluate(&context);

// Dictionary-based condition
let cond = DictCondition::new()
.when("approved", vec!["review_task"])
.when("rejected", vec!["revision_task"]);

Import

use praisonai::conditions::*;

Classes

ExpressionCondition

Simple expression-based condition. Evaluates simple expressions like ‘score 80’ or ‘status == ‘approved”.

DictCondition

Dictionary-based condition for routing. Maps values to target tasks/steps.

If

Builder for creating conditions.

ConditionProtocol

Protocol trait for condition implementations. This defines the essential interface that any condition must provide. It enables unified condition…

RoutingConditionProtocol

Extended protocol for conditions that support routing to targets. This extends ConditionProtocol with the ability to return target tasks/steps based…

Functions

evaluate_condition()

Evaluate a condition expression against a context. Convenience function for simple condition evaluation.

Rust Conditions

Rust Routing