Skip to main content

A Python manager for the modules __all__ variable.

Project description

AllStar

Allstar is a simple library for modules __all__ iterable management.

The __all__ iterable is used to define what is imported when you use from module import *. This kind of import is used by project mappers like documentation generators. It is important because, for example, you don't want to generate the documentation for the defined classes and all the imported ones.

it is called "allstar" because __all__ is imported using an star ( * ) symbol

Usage

Basic usage

from allstar import Star

# manager instance
# __name__ is used to reference the module and its attributes
star = Star(__name__)

# star.sign adds a callable to the __all__ iterable
@star.sign
class TheClass:
    pass

@star.sign
def the_function():
    pass

print(__all__)  # prints: ['TheClass', 'the_function']

Extended usage

import os, sys, builtins

from allstar import Star

__all__ = ['os']  # Star preserves the previous names

star = Star(__name__)

star.include('builtins')  # include names using strings or references

star.include_all(['os', 'sys'])  # include names using iterables

Some extra features

from allstar import Star

star = Star(__name__)

star.empty()  # empties the __all__ iterable

star.freeze()  # turns the __all__ iterable into a tuple

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

allstar-1.1.1.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

allstar-1.1.1-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file allstar-1.1.1.tar.gz.

File metadata

  • Download URL: allstar-1.1.1.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.2

File hashes

Hashes for allstar-1.1.1.tar.gz
Algorithm Hash digest
SHA256 d84c51d23c5f9101d7049115293000559c32e38508386f93f56afe40f21714c5
MD5 bae5f44a2315dde1c5976728ab68786b
BLAKE2b-256 8069bcc84528b41746187fe3771279052174c5587fb696d82fd626a16c6d5fde

See more details on using hashes here.

File details

Details for the file allstar-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: allstar-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.2

File hashes

Hashes for allstar-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8f7ec0c9a729decbfd9c6036054b745fe136de7af94babbe4268562214411f81
MD5 8e77792edb4428d1f20e701e8efa2ac9
BLAKE2b-256 63b0611c31df4ee3c461d63b42d69cac67c617e0dccd39103b5436761ce57a98

See more details on using hashes here.

Supported by

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