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.12.tar.gz (26.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.12-py3-none-any.whl (28.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: syncraft-0.1.12.tar.gz
  • Upload date:
  • Size: 26.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.12.tar.gz
Algorithm Hash digest
SHA256 15b22d713a22b768a98ef39b49458cc5bf5b2f546a2df53d58dc32de7543333e
MD5 62ae8a28ad1dd7dd423572048a053664
BLAKE2b-256 9cfb549d58acff9144992181a6559f5d2161e9d57882fa1f2bf9f1cf6a2c3d11

See more details on using hashes here.

File details

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

File metadata

  • Download URL: syncraft-0.1.12-py3-none-any.whl
  • Upload date:
  • Size: 28.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.12-py3-none-any.whl
Algorithm Hash digest
SHA256 62042573ba040f7842e89479cf5bc0266c38277b50b2ef55b98bb683a6d2aea3
MD5 5d664e628d01314e471e967a11eacdc8
BLAKE2b-256 e8c4c1d062985d0f20041d2898b577a648918ad3c94748d25b8312e529ae5303

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