Metadata-Version: 2.4
Name: ifgen
Version: 4.6.0
Summary: An interface generator for distributed computing.
Home-page: https://github.com/libre-embedded/ifgen
Author: Libre Embedded
Author-email: Libre Embedded <vaughn@libre-embedded.com>
Maintainer-email: Libre Embedded <vaughn@libre-embedded.com>
License-Expression: MIT
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Unix
Classifier: Development Status :: 5 - Production/Stable
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: runtimepy>=5.15.0
Requires-Dist: vcorelib>=3.5.9
Provides-Extra: test
Requires-Dist: pylint; extra == "test"
Requires-Dist: flake8; extra == "test"
Requires-Dist: black; extra == "test"
Requires-Dist: ruff; extra == "test"
Requires-Dist: mypy; extra == "test"
Requires-Dist: isort; extra == "test"
Requires-Dist: yamllint; extra == "test"
Requires-Dist: yambs; extra == "test"
Requires-Dist: vmklib>=2.0.3; extra == "test"
Requires-Dist: sphinx; extra == "test"
Requires-Dist: sphinx-book-theme; extra == "test"
Requires-Dist: pytest-cov; extra == "test"
Requires-Dist: setuptools-wrapper; extra == "test"
Requires-Dist: types-setuptools; extra == "test"
Requires-Dist: yambs>=3.0.4; extra == "test"
Dynamic: author
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-dist
Dynamic: requires-python

<!--
    =====================================
    generator=datazen
    version=3.2.3
    hash=8d3c526a8528a19206c3cbb830964859
    =====================================
-->

# ifgen ([4.6.0](https://pypi.org/project/ifgen/))

[![python](https://img.shields.io/pypi/pyversions/ifgen.svg)](https://pypi.org/project/ifgen/)
![Build Status](https://github.com/libre-embedded/ifgen/workflows/Python%20Package/badge.svg)
[![codecov](https://codecov.io/gh/libre-embedded/ifgen/branch/master/graphs/badge.svg?branch=master)](https://codecov.io/github/libre-embedded/ifgen)
![PyPI - Status](https://img.shields.io/pypi/status/ifgen)
![Dependents (via libraries.io)](https://img.shields.io/librariesio/dependents/pypi/ifgen)

*An interface generator for distributed computing.*

Consider [sponsoring development](https://github.com/sponsors/libre-embedded).

([interface documentation](https://libre-embedded.github.io/python/ifgen))

## Python Version Support

This package is tested with the following Python minor versions:

* [`python3.12`](https://docs.python.org/3.12/)
* [`python3.13`](https://docs.python.org/3.13/)

## Platform Support

This package is tested on the following platforms:

* `ubuntu-latest`
* `macos-latest`
* `windows-latest`

# Introduction

# Command-line Options

```
$ ./venv3.13/bin/ig -h

usage: ig [-h] [--version] [-v] [-q] [--curses] [--no-uvloop] [-C DIR]
          {gen,svd,noop} ...

An interface generator for distributed computing.

options:
  -h, --help      show this help message and exit
  --version       show program's version number and exit
  -v, --verbose   set to increase logging verbosity
  -q, --quiet     set to reduce output
  --curses        whether or not to use curses.wrapper when starting
  --no-uvloop     whether or not to disable uvloop as event loop driver
  -C, --dir DIR   execute from a specific directory

commands:
  {gen,svd,noop}  set of available commands
    gen           generate interfaces
    svd           process CMSIS-SVD files
    noop          command stub (does nothing)

```

# Internal Dependency Graph

A coarse view of the internal structure and scale of
`ifgen`'s source.
Generated using [pydeps](https://github.com/thebjorn/pydeps) (via
`mk python-deps`).

![ifgen's Dependency Graph](im/pydeps.svg)
