Metadata-Version: 2.4
Name: cadule
Version: 0.0.1
Summary: A Python library that provides decorators for converting regular modules into callable modules
Author-email: AN Long <aisk1988@gmail.com>
Maintainer-email: AN Long <aisk1988@gmail.com>
License: BSD-3-Clause
Keywords: python,decorator,metaprogramming,module,callable
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Code Generators
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# Cadule

*Cadule* (short for Ca\[llableMo\]dule) is a Python library that transforms regular modules into callable objects. By using the decorators provided by cadule, you can make entire modules callable just like functions.

## Usage 

### Example File: `hello.py`

```python
import cadule

@cadule
def __call__():
    print("Hello World!")
```

### Python REPL Interaction

```python
>>> import hello
>>> hello()
Hello World!
>>> # Now the entire hello module has become a callable object
>>> callable(hello)
True
>>> # You can still access other attributes in the module (if any exist)
```

As shown above, by simply applying the decorator, the entire `hello` module becomes a callable object, and calling it executes the decorated `__call__` function.
