// FilterModule installs a featureBreaker module filter in the context. func FilterModule(c context.Context, defaultError error) (context.Context, FeatureBreaker) { state := newState(defaultError) return module.AddFilters(c, func(ic context.Context, i module.Interface) module.Interface { return &modState{state, i} }), state }
// FilterModule installs a counter Module filter in the context. func FilterModule(c context.Context) (context.Context, *ModuleCounter) { state := &ModuleCounter{} return module.AddFilters(c, func(ic context.Context, mod module.Interface) module.Interface { return &modCounter{state, mod} }), state }