use crate::TemplateMode;
use crate::engine::TemplateHandlerClass;
pub trait IPostProcessor: Send + Sync {
fn get_dialect_precedence(&self) -> Option<i32> {
None
}
fn get_wrapped_post_processor(&self) -> Option<&dyn IPostProcessor> {
None
}
fn is_attribute_definitions_aware(&self) -> bool {
false
}
fn set_attribute_definitions(
&self,
_attribute_definitions: std::sync::Arc<crate::engine::AttributeDefinitions>,
) {
}
fn is_element_definitions_aware(&self) -> bool {
false
}
fn set_element_definitions(
&self,
_element_definitions: std::sync::Arc<crate::engine::ElementDefinitions>,
) {
}
fn get_template_mode(&self) -> Option<TemplateMode>;
fn get_precedence(&self) -> i32;
fn get_handler_class(&self) -> Option<&TemplateHandlerClass>;
fn class_name(&self) -> &'static str {
std::any::type_name::<Self>()
}
}