#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
#[repr(u8)]
pub enum BehaviorKind {
#[default]
Action,
Condition,
Control,
Decorator,
SubTree,
}
impl core::fmt::Display for BehaviorKind {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
write!(f, "{}", self.as_str())
}
}
impl BehaviorKind {
#[must_use]
pub const fn as_str(&self) -> &'static str {
match self {
Self::Action => crate::ACTION,
Self::Condition => crate::CONDITION,
Self::Control => crate::CONTROL,
Self::Decorator => crate::DECORATOR,
Self::SubTree => crate::SUBTREE,
}
}
}