Metadata-Version: 2.4
Name: py-tree-sitter-epics
Version: 0.3.0
Summary: Facilitate tree-sitter-epics parsing in python
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: epics,tree-sitter
Author: Alexis Gaget
Author-email: alexis.gaget@cea.fr
Maintainer: Alexis Gaget
Maintainer-email: alexis.gaget@cea.fr
Requires-Python: >= 3.10
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python
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.14
Classifier: Topic :: Documentation
Classifier: Topic :: Documentation :: Sphinx
Classifier: Framework :: Sphinx
Classifier: Framework :: Sphinx :: Domain
Classifier: Framework :: Sphinx :: Extension
Provides-Extra: docs
Requires-Dist: furo ; extra == "docs"
Requires-Dist: myst-parser ; extra == "docs"
Requires-Dist: pytest (>=8.4)
Requires-Dist: sphinx ; extra == "docs"
Requires-Dist: tree-sitter (>=0.25.2)
Requires-Dist: tree-sitter-epics-db (>=0.2.0)
Project-URL: Changelog, https://py-tree-sitter-epics.readthedocs.io/en/stable/changelog.html
Project-URL: Documentation, https://py-tree-sitter-epics.readthedocs.io/en/stable/
Project-URL: Issues, https://github.com/epics-extensions/py-tree-sitter-epics/issues
Project-URL: Source, https://github.com/epics-extensions/py-tree-sitter-epics
Description-Content-Type: text/markdown

# PY-TREE-SITTER-EPICS

[![ReadTheDocs - documentation](https://img.shields.io/badge/ReadTheDocs-documentation-blue?logo=readthedocs)](https://py-tree-sitter-epics.readthedocs.io/en/stable/)
[![PyPI - Version](https://img.shields.io/pypi/v/py-tree-sitter-epics)](https://pypi.org/project/py-tree-sitter-epics/)

Based on [tree-sitter](https://github.com/tree-sitter/tree-sitter) EPICS grammars
and [py-tree-sitter](https://github.com/tree-sitter/py-tree-sitter),
this module enables you to serialize [EPICS](https://epics-controls.org/) DB files
into semantic Python objects.

## Installation

The module is available on PyPI as [py-tree-sitter-epics](https://pypi.org/project/py-tree-sitter-epics/).

Add `py-tree-sitter-epics` to your `pyproject.toml`,
or if you use Python virtual environments:

```bash
# In your virtual environment
pip install py-tree-sitter-epics
```

## Example usage

``` python
from py_tree_sitter_epics import epicsdb

db = epicsdb.parse_file("/tmp/myExample.db")
for record in db.records:
    print(f"'{record.name}': {record.documentation}")
```

