behaviortree 0.8.0

A #![no_std] compatible behavior tree library similar to BehaviorTree.CPP.
Documentation
// Copyright © 2024 Stephan Kunz
#![no_std]
#![doc = include_str!("../README.md")]

#[cfg(doctest)]
doc_comment::doctest!("../README.md");

#[doc(hidden)]
extern crate alloc;
#[cfg(feature = "std")]
#[doc(hidden)]
extern crate std;

// mostly needed stuff
pub mod prelude;

// modules
pub mod error;

// flatten:
pub use error::Error;

// re-export Arc, Mutex, RwLock & Guards
#[allow(unused)]
pub use dataport::{Arc, Mutex, RwLock, RwLockReadGuard, RwLockWriteGuard};

// re-exports:
// derive macros
pub use behaviortree_derive::{Action, Condition, Control, Decorator};
// core artefacts
pub use behaviortree_core::{Behavior, BehaviorCreationFn, BehaviorExecution, BehaviorKind, BehaviorResult, BehaviorState};
// databoard artefacts
pub use databoard::{Databoard, RemappingList};
// dataport artefacts
pub use dataport::{
	PortArray, PortCollection, PortCollectionAccessors, PortCollectionAccessorsCommon, PortCollectionProvider, PortMap,
	PortVec, create_inbound_entry, create_inbound_entry_parseable, create_inoutbound_entry,
	create_inoutbound_entry_parseable, create_outbound_entry, create_outbound_entry_parseable, create_port_array,
	create_port_map, create_port_vec,
};