Skip to main content

Idl grammar for tree-sitter

Project description

tree-sitter-idl

OMG IDL 4.2(with XTypes extension) grammar for tree-sitter.

current state

IDL 4.2:

  • 7.3 Preprocessing(partial)
  • 7.4.1 Building Block Core Data Types
  • 7.4.2 Building Block Any
  • 7.4.3 Building Block Interfaces – Basic
  • 7.4.4 Building Block Interfaces – Full
  • 7.4.5 Building Block Value Types
  • 7.4.6 Building Block CORBA-Specific – Interfaces
  • 7.4.7 Building Block CORBA-Specific – Value Types
  • 7.4.8 Building Block Components – Basic
  • 7.4.9 Building Block Components – Homes
  • 7.4.10 Building Block CCM-Specific
  • 7.4.11 Building Block Components – Ports and Connectors
  • 7.4.12 Building Block Template Modules
  • 7.4.13 Building Block Extended Data-Types
  • 7.4.14 Building Block Anonymous Types
  • 7.4.15 Building Block Annotations
  • 7.4.16 Relationships between the Building Blocks
  • 8 Standardized Annotations(partial)

DDS-XTypes:

  • 7.3.1.2.3 Alternative Annotation Syntax (by idl_annotation)

extends

allow merge case

union A switch(long) {
    case 1:
    case 2: //< allow
    case 3:
        u8 a;
};

allow using simple_type_spec in template parameter

module MyTemplate <typename T, struct S, long m> {
                                      //  ^ allow
};

allow custom prop appears in value_box_def

custom valuetype A a; // value_box_def
// ^ extend grammar

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

tree-sitter-idl-0.0.6.tar.gz (76.7 kB view hashes)

Uploaded Source

Built Distributions

tree_sitter_idl-0.0.6-cp38-abi3-win_amd64.whl (61.8 kB view hashes)

Uploaded CPython 3.8+ Windows x86-64

tree_sitter_idl-0.0.6-cp38-abi3-musllinux_1_1_x86_64.whl (78.9 kB view hashes)

Uploaded CPython 3.8+ musllinux: musl 1.1+ x86-64

tree_sitter_idl-0.0.6-cp38-abi3-musllinux_1_1_aarch64.whl (102.2 kB view hashes)

Uploaded CPython 3.8+ musllinux: musl 1.1+ ARM64

tree_sitter_idl-0.0.6-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (99.7 kB view hashes)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ ARM64

tree_sitter_idl-0.0.6-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (76.5 kB view hashes)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

tree_sitter_idl-0.0.6-cp38-abi3-macosx_11_0_arm64.whl (59.9 kB view hashes)

Uploaded CPython 3.8+ macOS 11.0+ ARM64

tree_sitter_idl-0.0.6-cp38-abi3-macosx_10_9_x86_64.whl (56.8 kB view hashes)

Uploaded CPython 3.8+ macOS 10.9+ x86-64

Supported by

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