diff options
author | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2017-11-14 22:33:56 +0900 |
---|---|---|
committer | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2017-12-12 18:24:52 +0900 |
commit | 16c244cd6af79afa85202af1a0f1e325c175994f (patch) | |
tree | ea931dcad5d64d6ca0a10efa272f5733586a72b8 | |
parent | 0e86ff2f1133e529d148cea6cc235218d73cc7d4 (diff) | |
download | sphinx-git-16c244cd6af79afa85202af1a0f1e325c175994f.tar.gz |
Add LoggingReporter.from_reporter() constructor
-rw-r--r-- | sphinx/io.py | 4 | ||||
-rw-r--r-- | sphinx/util/docutils.py | 7 |
2 files changed, 8 insertions, 3 deletions
diff --git a/sphinx/io.py b/sphinx/io.py index 418e91b12..5868bd7b5 100644 --- a/sphinx/io.py +++ b/sphinx/io.py @@ -58,9 +58,7 @@ class SphinxBaseReader(standalone.Reader): # type: () -> nodes.document document = standalone.Reader.new_document(self) reporter = document.reporter - document.reporter = LoggingReporter(reporter.source, reporter.report_level, - reporter.halt_level, reporter.debug_flag, - reporter.error_handler) + document.reporter = LoggingReporter.from_reporter(reporter) return document diff --git a/sphinx/util/docutils.py b/sphinx/util/docutils.py index 92e6c8c22..d24a8f827 100644 --- a/sphinx/util/docutils.py +++ b/sphinx/util/docutils.py @@ -167,6 +167,13 @@ class WarningStream(object): class LoggingReporter(Reporter): + @classmethod + def from_reporter(cls, reporter): + # type: (Reporter) -> LoggingReporter + """Create an instance of LoggingReporter from other reporter object.""" + return cls(reporter.source, reporter.report_level, reporter.halt_level, + reporter.debug_flag, reporter.error_handler) + def __init__(self, source, report_level, halt_level, debug=False, error_handler='backslashreplace'): # type: (unicode, int, int, bool, unicode) -> None |