轻量级Python面向方面模块
项目描述
向函数或方法提供钩子建议。
advise()是一个装饰器,它接受一组函数或方法,并将装饰过的函数注入到它们的位置。没有before/after回调的概念。相反,拦截函数负责调用(或不调用)被拦截的函数。
“经典”的日志示例
class A(object): def a_function(self): print 'a_function()' @advise(A.a_function) def logit(on, next, *args, **kwargs): logging.debug('%r.%r(%r, %r)', on, next, args, kwargs) return next(*args, **kwargs)
查看函数文档以获取更多信息。