Utilities to inherit method documentation from parent classes.
Project description
==================
python-doc-inherit
==================
Utilities to inherit method documentation from parent classes.
Badges
------
.. image:: https://img.shields.io/travis/kavdev/python-doc-inherit/master.svg?style=flat-square
:target: https://travis-ci.org/kavdev/python-doc-inherit
.. image:: https://img.shields.io/codecov/c/github/kavdev/python-doc-inherit/master.svg?style=flat-square
:target: http://codecov.io/github/kavdev/python-doc-inherit?branch=master
.. image:: https://img.shields.io/requires/github/kavdev/python-doc-inherit.svg?style=flat-square
:target: https://requires.io/github/kavdev/python-doc-inherit/requirements/?branch=master
.. image:: https://img.shields.io/codacy/75dbe2685efe47c3aa203a53154c9e7e.svg?style=flat-square
:target: https://www.codacy.com/app/kavanaugh-development/python-doc-inherit/dashboard
.. image:: https://img.shields.io/pypi/v/python-doc-inherit.svg?style=flat-square
:target: https://pypi.python.org/pypi/python-doc-inherit
.. image:: https://img.shields.io/pypi/dw/python-doc-inherit.svg?style=flat-square
:target: https://pypi.python.org/pypi/python-doc-inherit
.. image:: https://img.shields.io/github/issues/kavdev/python-doc-inherit.svg?style=flat-square
:target: https://github.com/kavdev/python-doc-inherit/issues
.. image:: https://img.shields.io/github/license/kavdev/python-doc-inherit.svg?style=flat-square
:target: https://github.com/kavdev/python-doc-inherit/blob/master/LICENSE
Installation
------------
Install python-doc-inherit:
.. code-block:: bash
pip install python-doc-inherit
Usage
-----
Simple method decorator (will cause other decorators to fail)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: python
from doc_inherit import method_doc_inherit
class Foo(object):
def foo(self):
"""Frobber"""
pass
class Bar(Foo):
@method_doc_inherit
def foo(self):
pass
Now, ``Bar.foo.__doc__ == Bar().foo.__doc__ == Foo.foo.__doc__ == "Frobber"``
Simple class decorator
~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: python
from doc_inherit import class_doc_inherit
class Foo(object):
def foo(self):
"""Frobber"""
pass
@class_doc_inherit
class Bar(Foo):
def foo(self):
pass
Now, ``Bar.foo.__doc__ == Bar().foo.__doc__ == Foo.foo.__doc__ == "Frobber"``
Metaclass
~~~~~~~~~
.. code-block:: python
from doc_inherit.metaclasses import DocStringInheritor
from six import add_metaclass # Note: Six is not included in this distribution.
class Animal:
def move_to(self, dest):
"""Move to *dest*"""
pass
@add_metaclass(DocStringInheritor)
class Bird(Animal):
def move_to(self, dest):
pass
Now, ``Animal.move_to.__doc__ == Bird.move_to.__doc__ == "Move to *dest*"``
Running the Tests
------------------
.. code-block:: bash
pip install -r requirements/test.txt
./runtests.py
Changes
=======
0.1.1 (2016-06-18)
----------------------
* small fixes
0.1.0 (2016-06-18)
----------------------
* Initial release
python-doc-inherit
==================
Utilities to inherit method documentation from parent classes.
Badges
------
.. image:: https://img.shields.io/travis/kavdev/python-doc-inherit/master.svg?style=flat-square
:target: https://travis-ci.org/kavdev/python-doc-inherit
.. image:: https://img.shields.io/codecov/c/github/kavdev/python-doc-inherit/master.svg?style=flat-square
:target: http://codecov.io/github/kavdev/python-doc-inherit?branch=master
.. image:: https://img.shields.io/requires/github/kavdev/python-doc-inherit.svg?style=flat-square
:target: https://requires.io/github/kavdev/python-doc-inherit/requirements/?branch=master
.. image:: https://img.shields.io/codacy/75dbe2685efe47c3aa203a53154c9e7e.svg?style=flat-square
:target: https://www.codacy.com/app/kavanaugh-development/python-doc-inherit/dashboard
.. image:: https://img.shields.io/pypi/v/python-doc-inherit.svg?style=flat-square
:target: https://pypi.python.org/pypi/python-doc-inherit
.. image:: https://img.shields.io/pypi/dw/python-doc-inherit.svg?style=flat-square
:target: https://pypi.python.org/pypi/python-doc-inherit
.. image:: https://img.shields.io/github/issues/kavdev/python-doc-inherit.svg?style=flat-square
:target: https://github.com/kavdev/python-doc-inherit/issues
.. image:: https://img.shields.io/github/license/kavdev/python-doc-inherit.svg?style=flat-square
:target: https://github.com/kavdev/python-doc-inherit/blob/master/LICENSE
Installation
------------
Install python-doc-inherit:
.. code-block:: bash
pip install python-doc-inherit
Usage
-----
Simple method decorator (will cause other decorators to fail)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: python
from doc_inherit import method_doc_inherit
class Foo(object):
def foo(self):
"""Frobber"""
pass
class Bar(Foo):
@method_doc_inherit
def foo(self):
pass
Now, ``Bar.foo.__doc__ == Bar().foo.__doc__ == Foo.foo.__doc__ == "Frobber"``
Simple class decorator
~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: python
from doc_inherit import class_doc_inherit
class Foo(object):
def foo(self):
"""Frobber"""
pass
@class_doc_inherit
class Bar(Foo):
def foo(self):
pass
Now, ``Bar.foo.__doc__ == Bar().foo.__doc__ == Foo.foo.__doc__ == "Frobber"``
Metaclass
~~~~~~~~~
.. code-block:: python
from doc_inherit.metaclasses import DocStringInheritor
from six import add_metaclass # Note: Six is not included in this distribution.
class Animal:
def move_to(self, dest):
"""Move to *dest*"""
pass
@add_metaclass(DocStringInheritor)
class Bird(Animal):
def move_to(self, dest):
pass
Now, ``Animal.move_to.__doc__ == Bird.move_to.__doc__ == "Move to *dest*"``
Running the Tests
------------------
.. code-block:: bash
pip install -r requirements/test.txt
./runtests.py
Changes
=======
0.1.1 (2016-06-18)
----------------------
* small fixes
0.1.0 (2016-06-18)
----------------------
* Initial release
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file python-doc-inherit-0.3.0.tar.gz
.
File metadata
- Download URL: python-doc-inherit-0.3.0.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 99aa5f18ceb07463128bb1fd33f43a8b789b89b7dc1033a783ee5c41fdf31fa7 |
|
MD5 | f4087e29e97795d8d789e2403dbee68d |
|
BLAKE2b-256 | 41b6763d2474e0ed3946f470513f0ee61b5be7921880a2421b311810049d8881 |
File details
Details for the file python_doc_inherit-0.3.0-py2.py3-none-any.whl
.
File metadata
- Download URL: python_doc_inherit-0.3.0-py2.py3-none-any.whl
- Upload date:
- Size: 5.9 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 588ad773a64d9a0f20cb7edf22a7d7c5421996744b0f024f042524f5fc7d226f |
|
MD5 | dcb762e5e75b725aca1987e00868c265 |
|
BLAKE2b-256 | 74a946749cd2d28b7b566d240fecb0293e3b5af3741e8f25517d3677329ee545 |