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
  • SQLite syntax support included

Installation

pip install syncraft

TODO

  • convert to dict/dataclass via bimap in syntax
  • define DSL over Variable to construct predicates
  • Try the parsing, generation, and data processing machinery on SQLite3 syntax. So that I can have direct feedback on the usability of this library and a fully functional SQLite3 library.
  • Make the library as fast as possible and feasible.

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.32.tar.gz (30.2 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.32-py3-none-any.whl (30.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: syncraft-0.1.32.tar.gz
  • Upload date:
  • Size: 30.2 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.32.tar.gz
Algorithm Hash digest
SHA256 b2419582d7c18162d4dcb5783b05fa2e760505aa55d432a87c6a752a91aa21b4
MD5 8fef1f32714da08bcb3caecd095612ca
BLAKE2b-256 3addeede726d794d29591ea055f6b0a4c085db279c4db0d41782c53ff72b7248

See more details on using hashes here.

File details

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

File metadata

  • Download URL: syncraft-0.1.32-py3-none-any.whl
  • Upload date:
  • Size: 30.7 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.32-py3-none-any.whl
Algorithm Hash digest
SHA256 ade2c9716c23054200cd82a6496f046ef5a5a7442e510ea8a0eb078af14ffd97
MD5 ad60281fc13b2a30277b9b2809943188
BLAKE2b-256 0a1c33ac46a4f152ef2a2c4a6f0d9d31113f68242e8f52d5e8fa977850fb43b3

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