pub mod builders;
pub mod combinators;
pub mod condition;
pub mod consideration;
pub mod decision_makers;
pub mod evaluators;
pub mod memory;
pub mod score_mapping;
pub mod task;
#[cfg(test)]
mod tests;
use crate::{decision_makers::DecisionMaker, task::Task};
#[cfg(not(feature = "scalar64"))]
pub type Scalar = f32;
#[cfg(feature = "scalar64")]
pub type Scalar = f64;
pub type DefaultKey = String;
pub trait DecisionMakingTask<M = (), K = DefaultKey>: DecisionMaker<M, K> + Task<M> {}
impl<T, M, K> DecisionMakingTask<M, K> for T where T: DecisionMaker<M, K> + Task<M> {}
#[doc(hidden)]
pub mod prelude {
pub use crate::{
DecisionMakingTask, DefaultKey, Scalar,
builders::{behavior_tree::*, lod::*, *},
combinators::{all::*, any::*, count::*, *},
condition::*,
consideration::*,
decision_makers::{
machinery::*, parallelizer::*, planner::*, reasoner::*, selector::*, sequencer::*, *,
},
evaluators::{max::*, min::*, product::*, sum::*, *},
memory::{blackboard::*, datatable::*, *},
score_mapping::*,
task::*,
};
}