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.17.0.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for zserio-2.17.0.tar.gz
Algorithm Hash digest
SHA256 dce454f4ed890be92fc67015a09c8323660b52a55736014be58ae9f22047908e
MD5 e1200150b393d2a6590812abd17d5cae
BLAKE2b-256 9c8f0671e936ee13564565ad6b2f6e225d152899fa1f4e6a0956a3b3eeef2f42

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for zserio-2.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 62d22933cec3c3b77242a276edb72104ffcf3764b9b71c541af54724982e44b5
MD5 5397ebeedaf5579552f67551dc82a0e3
BLAKE2b-256 1c952157685d7ca35c741c7bfbbe36ca7d69696c293d12a8781c9a3a39a29323

See more details on using hashes here.

Supported by

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