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.2.tar.gz (4.4 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.2-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: allstar-1.1.2.tar.gz
  • Upload date:
  • Size: 4.4 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.2.tar.gz
Algorithm Hash digest
SHA256 fc01a16443fdbc6ebceee5e6d6c275fc54a67a4c5ee2308a234609efc136305b
MD5 50e50d7a6c0d8aa1c781d69e640d0be2
BLAKE2b-256 54051f805c2cf8e6c8ecb4636be52982eb5b68e066284a53a435d772fe829a83

See more details on using hashes here.

File details

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

File metadata

  • Download URL: allstar-1.1.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3d4bd7f9cb3e08db7e9e8ce2932a811a34427e52326744dec1655a220dba7e5f
MD5 ec1b89f19ed603fd17273816e2032140
BLAKE2b-256 97c1118a15b058ecb4867984b743e3865da05898f086cdd5da51ea36738316b5

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