Skip to main content

Python protobuf classes for Tel IR api

Project description

Xolir (Tel IR schema)

Goal

Some languages, like Tel, compile to multiple other languages. All the parsing and type checking is shared, but codegen is different.

To facilitate this, there needs to be a clear api that different code generator backends can consume. Since these backends may be different processes, it should be serializable.

That is Xolir - a cross-language intermediary representation (xo l ir). It is made for, but not restricted to, Tel.

Usage

The IR is specified in Protobuf3 format. You can compile this yourself with protoc

rm -rf target/ &&\
bash run.sh build &&\
sudo chown $USER:$USER -R target/

Tests

There is a test that generates some Xolir data with python and generates Java code.

See tests/test.sh to run this.

Implementation

Note that the language you generate the code for doesn't have to be the same language that the code generator is implemented in.

This uses protobuf. While this is not as descriptive as e.g. json-schema, this has better support for generating fast code in a range of languages.

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

xolir-0.0.1.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

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

xolir-0.0.1-py3-none-any.whl (2.6 kB view details)

Uploaded Python 3

File details

Details for the file xolir-0.0.1.tar.gz.

File metadata

  • Download URL: xolir-0.0.1.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for xolir-0.0.1.tar.gz
Algorithm Hash digest
SHA256 a1d2b2b3ff34560e6b88243d1d7b9db193bfe9c4a26e497c7c589fc3b55a6baa
MD5 46a92037d6dd96116d03e5092e1a9116
BLAKE2b-256 b16c758efbdee9f7ccb02efc57bf678751df5312ecf7f4ec7aa5e0ca8bd7bea4

See more details on using hashes here.

File details

Details for the file xolir-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: xolir-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 2.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for xolir-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7c65f8851efca779bd1bb3291493cc407a14c4d8e799dff2b0727450160a17b5
MD5 43d53955ffee62a4f4d5c3f1b42a37a1
BLAKE2b-256 36f182256f57ff3e60fbeb102242b6836c27caaae547f62a686dbde1de901803

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