mecha10_behavior_runtime/
lib.rs1pub mod actions;
31mod behavior;
32mod composition;
33pub mod config;
34mod execution;
35mod loader;
36mod registry;
37mod status;
38
39pub use actions::{register_builtin_actions, MoveNode, SensorCheckNode, TimerNode, WanderNode};
41pub use behavior::{BehaviorNode, BehaviorNodeExt, BoxedBehavior};
42pub use composition::{ParallelNode, ParallelPolicy, SelectOrNode, SequenceNode};
43pub use config::{
44 detect_project_root, get_current_environment, load_behavior_config, resolve_behavior_config_path,
45 validate_behavior_composition_json, validate_behavior_config, BehaviorConfig, CompositionConfig, NodeConfig,
46 NodeReference, ParallelPolicyConfig, ValidationResult,
47};
48pub use execution::{BehaviorExecutor, ExecutionContext, ExecutionStats};
49pub use loader::BehaviorLoader;
50pub use registry::NodeRegistry;
51pub use status::NodeStatus;
52
53pub mod hot_reload;
55
56pub use mecha10_core::Context;
58
59pub mod prelude {
61 pub use crate::actions::{MoveNode, SensorCheckNode, TimerNode, WanderNode};
62 pub use crate::behavior::{BehaviorNode, BehaviorNodeExt, BoxedBehavior};
63 pub use crate::composition::{ParallelNode, ParallelPolicy, SelectOrNode, SequenceNode};
64 pub use crate::config::{BehaviorConfig, CompositionConfig, NodeConfig, NodeReference, ParallelPolicyConfig};
65 pub use crate::execution::{BehaviorExecutor, ExecutionContext, ExecutionStats};
66 pub use crate::loader::BehaviorLoader;
67 pub use crate::registry::NodeRegistry;
68 pub use crate::status::NodeStatus;
69 pub use async_trait::async_trait;
70 pub use mecha10_core::Context;
71}