Skip to main content

pystubber - Creates a stub python file from a python module

Project description

pystubber

What differs from mypy stubgen?

As mypy's stubgen -m random generates the following for the random module:

class Random(_random.Random):
    VERSION: int = ...
    gauss_next: Any = ...
    def __init__(self, x: Optional[Any] = ...) -> None: ...
    def seed(self, a: Optional[Any] = ..., version: int = ...) -> None: ...
    def getstate(self): ...
    def setstate(self, state: Any) -> None: ...
    def __reduce__(self): ...
    def randrange(self, start: Any, stop: Optional[Any] = ..., step: int = ..., _int: Any = ...): ...
    def randint(self, a: Any, b: Any): ...
    def choice(self, seq: Any): ...
...

pystubber random instead generates:

#!/usr/bin/env python  # [module random]
"""
Random variable generators.
...
"""
__all__ = ['Random', 'seed', 'random', 'uniform', 'randint', 'choice', 'sample', 'randrange', 'shuffle', 'normalvariate', 'lognormvariate', 'expovariate', 'vonmisesvariate', 'gammavariate', 'triangular', 'gauss', 'betavariate', 'paretovariate', 'weibullvariate', 'getstate', ...]

class Random(_random.Random):
    def __getstate__(self):
        """
        # Issue 17489: Since __reduce__ was defined to fix #759889 this is no
        # longer called; we leave it here because it has been here since random was
        # rewritten back in 2001 and why risk breaking something.
        """
        raise NotImplementedError()

    def __init__(self, x=None):
        """
        Initialize an instance.

        Optional argument x controls seeding, as for Random.seed().
        """
        raise NotImplementedError()

    def __reduce__(self):
        """
        helper for pickle
        """
        raise NotImplementedError()
...

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

pystubber-0.1.2.tar.gz (8.4 kB view hashes)

Uploaded Source

Built Distribution

pystubber-0.1.2-py2.py3-none-any.whl (23.6 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page