Idl grammar for tree-sitter
Project description
tree-sitter-idl
OMG IDL 4.2(with XTypes extension) grammar for tree-sitter.
current state
IDL v4.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
DDS-XTypes v1.3:
- 7.3.1.2.3 Alternative Annotation Syntax
- 7.3.1.2.1 Built-in Annotations
DDS-RPC v1.0:
- 7.3.1 Service Definition in IDL
- 7.5.1.2.1 Annotations for the Enhanced Service Mapping
- 7.4.2.2 Specifying Topic Names using Annotations
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
allow omit param_attribute
interface A {
void f(uint8 b);
};
allow rust style oct number
const u8 A = 0o3;
allow binary number
const u8 A = 0b010101;
allow octet in typedef_spec
union A switch(octet) {};
// ^ allow
allow comma at last of enumator
enum A {
A,
// ^ allow
};
bitmask A {
@position(0) a,
// ^ allow
};
allow ignore 'name='
@DDSRequestTopic("RobotRequestTopic")
// ^ allow ignore `name=`
interface RobotControl {
void command(Command com);
};
allow ignore '=xx' in annotation
@derive(Debug, Clone)
// ^allow ignore "="
struct Hello {};
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tree_sitter_idl-3.14.0.tar.gz.
File metadata
- Download URL: tree_sitter_idl-3.14.0.tar.gz
- Upload date:
- Size: 122.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
43a69bdcfbc089035c9b85e10ea73b11a1e029f42f08768fd7d8f85bb187f108
|
|
| MD5 |
254db8a5b020d0a2ac02b6a2ba918213
|
|
| BLAKE2b-256 |
0ee3118312d22063d491a1f9afb2bdc1675aa0cb39c46e5c3b4270b98dfbf311
|
File details
Details for the file tree_sitter_idl-3.14.0-cp38-abi3-win_amd64.whl.
File metadata
- Download URL: tree_sitter_idl-3.14.0-cp38-abi3-win_amd64.whl
- Upload date:
- Size: 86.0 kB
- Tags: CPython 3.8+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a17895fbb1ef9f17b874fe9788161a08b89b96036c1d9bd7a60ba872d3142431
|
|
| MD5 |
99f915c62648ec76a3e52c1897d9cf20
|
|
| BLAKE2b-256 |
66e8632447e9f2a05b8f1515a170b1817695de872cc8e67582e9f4dcea6d4684
|
File details
Details for the file tree_sitter_idl-3.14.0-cp38-abi3-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: tree_sitter_idl-3.14.0-cp38-abi3-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 95.3 kB
- Tags: CPython 3.8+, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32ce204fe15d64e2e77285f165f931368d898418e099445e8cac6d3dedc4ff6d
|
|
| MD5 |
51cf345a38acb6ce58fe68e371545ddf
|
|
| BLAKE2b-256 |
065734006b1498cc3253239c8d7985313b42f4334c66afeed462f71888dbeef5
|
File details
Details for the file tree_sitter_idl-3.14.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: tree_sitter_idl-3.14.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 136.2 kB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2bb1b2755ee90392c5fa20425febca089987b69e2946c59cca000dd72a4352d8
|
|
| MD5 |
058ee5a38ac3b31e61f6ac6abc6d8484
|
|
| BLAKE2b-256 |
ae67c0838674bde6aa9b0e4074a436bcb0f93ffc5bed9fd4580d6e8f39f8d952
|
File details
Details for the file tree_sitter_idl-3.14.0-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: tree_sitter_idl-3.14.0-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 103.1 kB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0b89d9eddef5e599a2c0f198756b6aaf3d917ade8707a3e1f30aaa556e530f27
|
|
| MD5 |
17eaf8c7be46336d1248ce88e786bf2c
|
|
| BLAKE2b-256 |
3e8c0815c65ce8963fe205395c912213f5f51c8f7c327b645ecb51d499a3b3ac
|
File details
Details for the file tree_sitter_idl-3.14.0-cp38-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: tree_sitter_idl-3.14.0-cp38-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 85.7 kB
- Tags: CPython 3.8+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dda9596570d6b8d708ce4c881deb009d5acb9e507f43a7fefe4471f72525306d
|
|
| MD5 |
d423a2e58d089cf8200745d8e5dd8047
|
|
| BLAKE2b-256 |
233d969f071fd2a29dbbade1bebfe0df69fe05b32508828de4790ce3568530ee
|
File details
Details for the file tree_sitter_idl-3.14.0-cp38-abi3-macosx_10_9_x86_64.whl.
File metadata
- Download URL: tree_sitter_idl-3.14.0-cp38-abi3-macosx_10_9_x86_64.whl
- Upload date:
- Size: 81.1 kB
- Tags: CPython 3.8+, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dfcd4f4c0b376ee42acaaf0cdc67daa1f1cc42ecb9159812c998a325d66700b4
|
|
| MD5 |
1a488337e3a89cc52da770a2933fceaf
|
|
| BLAKE2b-256 |
c34a18612dd709208e354d13f22d030ad8f70d4a94036a08879616deaeefa80d
|