Skip to main content

Zserio runtime with compiler.

Project description

Zserio PyPi package contains Zserio compiler and Zserio Python runtime. Zserio is serialization framework available at GitHub.

Installation

To install Zserio compiler together with Zserio Python runtime, just run

pip install zserio

Usage from command line

Consider the following zserio schema which is stored to the source appl.zs:

package appl;

struct TestStructure
{
    int32 value;
};

To compile the schema by compiler and generate Python sources to the directory gen, you can run Zserio compiler directly from command line by the following command:

zserio appl.zs -python gen

Then, if you run the python by the command

PYTHONPATH="gen" python

you will be able to use the generated Python sources by the following python commands

import appl.api as api
test_structure = api.TestStructure()

Usage from Python

Consider the following zserio schema which is stored to the source appl.zs:

package appl;

struct TestStructure
{
    int32 value;
};

To compile the schema by compiler and generate Python sources to the directory gen, you can run the following python commands:

import zserio
api = zserio.generate("appl.zs", gen_dir = "gen")
test_structure = api.TestStructure()

For convenience, the method generate returns imported API for generated top level package.

Alternatively, you can run zserio compiler directly by the following python commands:

import sys
import importlib
import zserio
completed_process = zserio.run_compiler(["appl.zs", "-python", "gen"])
if completed_process.returncode == 0:
    sys.path.append("gen")
    api = importlib.import_module("appl.api")
    test_structure = api.TestStructure()

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

zserio-2.16.0.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

zserio-2.16.0-py3-none-any.whl (4.7 MB view details)

Uploaded Python 3

File details

Details for the file zserio-2.16.0.tar.gz.

File metadata

  • Download URL: zserio-2.16.0.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for zserio-2.16.0.tar.gz
Algorithm Hash digest
SHA256 892968e06b56b3631c9a2cb494383cd5dd0bcfb13f8910af25cb597057d52764
MD5 9cbff9784f03955817686dbce31fa6f0
BLAKE2b-256 2a5a3c7aad6eef7e5294a55036549b4155c0b6e114fae0df05b849aeb5dc711e

See more details on using hashes here.

File details

Details for the file zserio-2.16.0-py3-none-any.whl.

File metadata

  • Download URL: zserio-2.16.0-py3-none-any.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for zserio-2.16.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d4a86261e4fab7cc942d49dd2526a6b1924ac89a14ceb360446032b64a1c77ff
MD5 4ceea50db99ccd34db63b817c698b6d9
BLAKE2b-256 67a5ac2576849a47e749b3f3cab76fca63c3f8e73598efde877c997ef458e8d7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page