-
-
Notifications
You must be signed in to change notification settings - Fork 941
Commit 5a8a405
committed
Refactor Git.{AutoInterrupt,CatFileContentStream} nesting
This makes `Git.AutoInterrupt` and `Git.CatFileContentStream`
transparent aliases to top-level nonpublic `_AutoInterrupt` and
`_CatFileContentStream` classes in the `cmd` module.
This does not change the "public" interface. It also does not
change metadata relevant to documentation: the `__name__` and
`__qualname__` attributes are set explicitly to the values they had
before when these classes were defined nested, so that Sphinx
continues to document them (and to do so in full) in `Git` and as
`Git.AutoInterrupt` and `Git.CatFileContentStream`.
The purpose of this is to increase readability. The `Git` class is
big and complex, with a number of long members and various forms of
nesting. Since these two classes can be understood even without
reading the code of the `Git` class, moving the definitions out of
the `Git` class into top-level nonpublic classes will hopefully
increase readability and help with maintenance.1 parent cf8029d commit 5a8a405Copy full SHA for 5a8a405
File tree
Expand file treeCollapse file tree
1 file changed
+226
-214
lines changedFilter options
- git
Expand file treeCollapse file tree
1 file changed
+226
-214
lines changed
0 commit comments