Skip to main content

PyDSDL

Documentation PyPI - Downloads Forum

PyDSDL is a Cyphal DSDL compiler front-end implemented in Python. It accepts a DSDL namespace at the input and produces a well-annotated abstract syntax tree (AST) at the output, evaluating all constant expressions in the process. All DSDL features defined in the Cyphal Specification are supported. The library should, in theory, work on any platform and with any Python implementation.

Read the docs at pydsdl.readthedocs.io.

import pydsdl
try:
    types = pydsdl.read_namespace(target_directory, lookup_directories)
except pydsdl.InvalidDefinitionError as ex:
    print(f'{ex.path}:{ex.line}: Invalid DSDL: {ex.text}', file=sys.stderr)
    exit(1)
else:
    for t in types:
        print(t)  # Process the type -- generate code, analyze, etc.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydsdl-1.25.0.tar.gz (127.7 kB view details)

Uploaded Source

Built Distribution

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

pydsdl-1.25.0-py3-none-any.whl (145.3 kB view details)

Uploaded Python 3

File details

Details for the file pydsdl-1.25.0.tar.gz.

File metadata

  • Download URL: pydsdl-1.25.0.tar.gz
  • Upload date:
  • Size: 127.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for pydsdl-1.25.0.tar.gz
Algorithm Hash digest
SHA256 c326c6c80d6dad28ed8d4533f787ce94ce304164184b46cfec524b6889373de7
MD5 4fa237554cffa606857b867e41828f7e
BLAKE2b-256 1d6bff46defb0a7b18357a1e027b8b5d05af8f749f3d425df775df39a487f173

See more details on using hashes here.

File details

Details for the file pydsdl-1.25.0-py3-none-any.whl.

File metadata

  • Download URL: pydsdl-1.25.0-py3-none-any.whl
  • Upload date:
  • Size: 145.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for pydsdl-1.25.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2bc7c46813f4c3e3df928aff3546844f5f6a8400cca5e81b241c7a1e4c23ba9c
MD5 ee25c65d741afe8e411d41f14adf6e1b
BLAKE2b-256 3d9e03c68cba99f730ba103d69ebdf3cd25c92545fcad5efd7ddcdef8c017e97

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.25.0 This release

2 files

1.24.3

2 files

1.24.2

2 files

1.24.1

2 files

1.22.2

2 files

1.22.1

2 files

1.22.0

2 files

1.21.1

2 files

1.21.0

2 files

1.20.1

2 files

1.20.0

2 files

1.19.0

2 files

1.18.0

2 files

1.17.0

2 files

1.16.1

2 files

1.16.0

2 files

1.15.1

2 files

1.15.0

2 files

1.14.1

2 files

1.14.0

2 files

1.13.0

2 files

1.12.1

2 files

1.12.0

2 files

1.11.0

2 files

1.10.3

2 files

1.10.2

2 files

1.10.1

2 files

1.10.0

2 files

1.9.4

2 files

1.9.3

2 files

1.9.2

2 files

1.9.1

2 files

1.9.0

2 files

1.8.1

2 files

1.8.0

2 files

1.6.5

2 files

1.6.4

2 files

1.6.3

2 files

1.6.2

2 files

1.6.1

2 files

1.6.0

2 files

1.4.2

2 files

1.4.1

2 files

1.4.0

2 files

1.3.1

2 files

1.3.0

2 files

1.2.0

2 files

1.1.0

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

0.9.2

2 files

0.8.2

2 files

0.8.1

2 files

0.8.0

2 files

0.7.3

2 files

0.6.2

2 files

0.6.1

2 files

0.6.0

2 files

0.5.0

2 files

0.4.0

2 files

0.3.1

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

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