Skip to main content

Parser combinator library

Project description

Syncraft

Syncraft is a parser/generator combinator library with full round-trip support:

  • Parse source code into AST or dataclasses
  • Generate source code from dataclasses
  • Bidirectional transformations via lenses
  • Convenience combinators: all, first, last, named
  • SQLite syntax support included

Installation

pip install syncraft

TODO

  • Test Walker.get/set for bidirectional mapping between source code and data class
  • Annotate sqlite3 grammar with named nodes and data classes

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

syncraft-0.1.10.tar.gz (27.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

syncraft-0.1.10-py3-none-any.whl (29.3 kB view details)

Uploaded Python 3

File details

Details for the file syncraft-0.1.10.tar.gz.

File metadata

  • Download URL: syncraft-0.1.10.tar.gz
  • Upload date:
  • Size: 27.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for syncraft-0.1.10.tar.gz
Algorithm Hash digest
SHA256 bcdb6cf4c81a96ac076345312b4756b8835575bd3c32ca08d5d775e39a7865a3
MD5 b2254192d52fc855aaecec561d4e6f5f
BLAKE2b-256 86691a3e4e5ba7f7333fcc952dfece166e472069ac748cf79c5b651e4c05df76

See more details on using hashes here.

File details

Details for the file syncraft-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: syncraft-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 29.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for syncraft-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 95e426a09149f67329bed9b4b460e675d2f68c09861bac47cf2717a7e48858e2
MD5 f05f5a581a017f86b19c7ec2991073c6
BLAKE2b-256 7f61fff68d98d1e8bfc3ff70af5a57876de410769a32e56b7de7a09c32082393

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