use mago_syntax::ast::Expression;
use crate::plugin::context::HookContext;
use crate::plugin::hook::ExpressionHookResult;
use crate::plugin::hook::HookResult;
use crate::plugin::provider::Provider;
pub trait ExpressionHook: Provider {
fn before_expression(
&self,
_expr: &Expression<'_>,
_context: &mut HookContext<'_, '_>,
) -> HookResult<ExpressionHookResult> {
Ok(ExpressionHookResult::Continue)
}
fn after_expression(&self, _expr: &Expression<'_>, _context: &mut HookContext<'_, '_>) -> HookResult<()> {
Ok(())
}
}