module tagion.behaviour.BehaviourReporter;

import tagion.behaviour.BehaviourFeature : FeatureGroup;

@safe
synchronized
interface BehaviourReporter {
    const(Exception) before(scope const(FeatureGroup*) feature_group) nothrow;
    const(Exception) after(scope const(FeatureGroup*) feature_group) nothrow;
}

static shared(BehaviourReporter) reporter;