[loggingTools] add docstring to exemplify usage of LogMixin
This commit is contained in:
parent
cca1d20b0e
commit
1e31e55682
@ -473,8 +473,29 @@ class CapturingLogHandler(logging.Handler):
|
|||||||
|
|
||||||
|
|
||||||
class LogMixin(object):
|
class LogMixin(object):
|
||||||
""" Mixin class that adds a 'log' property getter returning an instance
|
""" Mixin class that adds logging functionality to another class.
|
||||||
of logging.Logger class, which is named after self <module>.<class> name.
|
You can define a new class that subclasses from LogMixin as well as
|
||||||
|
other base classes through multiple inheritance.
|
||||||
|
All instances of that class will have a 'log' property that returns
|
||||||
|
a logging.Logger named after their respective <module>.<class>.
|
||||||
|
For example:
|
||||||
|
|
||||||
|
>>> class BaseClass(object):
|
||||||
|
... pass
|
||||||
|
>>> class MyClass(LogMixin, BaseClass):
|
||||||
|
... pass
|
||||||
|
>>> a = MyClass()
|
||||||
|
>>> isinstance(a.log, logging.Logger)
|
||||||
|
True
|
||||||
|
>>> print(a.log.name)
|
||||||
|
fontTools.misc.loggingTools.MyClass
|
||||||
|
>>> class AnotherClass(MyClass):
|
||||||
|
... pass
|
||||||
|
>>> b = AnotherClass()
|
||||||
|
>>> isinstance(b.log, logging.Logger)
|
||||||
|
True
|
||||||
|
>>> print(b.log.name)
|
||||||
|
fontTools.misc.loggingTools.AnotherClass
|
||||||
"""
|
"""
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
Loading…
x
Reference in New Issue
Block a user