pub mod handlers;
mod pack;
pub mod vocab;
use khive_runtime::KhiveRuntime;
use khive_types::{HandlerDef, Pack};
pub(crate) use pack::TEMPLATE_HANDLERS;
pub(crate) const PACK_NAME: &str = "template";
pub struct TemplatePack {
runtime: KhiveRuntime,
}
impl Pack for TemplatePack {
const NAME: &'static str = PACK_NAME;
const NOTE_KINDS: &'static [&'static str] = vocab::NOTE_KINDS;
const ENTITY_KINDS: &'static [&'static str] = vocab::ENTITY_KINDS;
const HANDLERS: &'static [HandlerDef] = &TEMPLATE_HANDLERS;
const REQUIRES: &'static [&'static str] = &["kg"];
}
impl TemplatePack {
pub fn new(runtime: KhiveRuntime) -> Self {
Self { runtime }
}
pub(crate) fn runtime(&self) -> &KhiveRuntime {
&self.runtime
}
}