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.0.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.0-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: allstar-1.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 963eb4252cd0cc1fe910879ff3ad0335c9c5efa2202181ff817125f299821797
MD5 1041a9bb2c66c3f4cea55c7ddd68c9b0
BLAKE2b-256 f5657be5a810a11e624b3469d4ef11da6d0fb79ea9be8e36bbd807431125526f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: allstar-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.1 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c452a3574ac69b6cc1e39fbcca29e412a2ada0d597bff9d5f95f063ada00acbc
MD5 ca5a47cb8bce5d2c2073688c0803f19c
BLAKE2b-256 a779f7f0509b30598afe230f7a29d8956ac7a0d4e1fced07d302feeb47d63909

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