# pyslang - Language bindings for slang, SystemVerilog parsing and compilation library
[![build](https://github.com/MikePopoloski/pyslang/actions/workflows/build.yml/badge.svg)](https://github.com/MikePopoloski/pyslang/actions/workflows/build.yml)
[![PyPI](https://img.shields.io/pypi/v/pyslang.svg)](https://pypi.org/project/pyslang/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/MikePopoloski/pyslang/blob/master/LICENSE)
[![Join the chat at https://gitter.im/MikePopoloski/slang](https://badges.gitter.im/MikePopoloski/slang.svg)](https://gitter.im/MikePopoloski/slang?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
slang is a software library that provides various components for lexing, parsing, type checking, and elaborating SystemVerilog code. pyslang exposes that library
to Python projects.
Full documentation is available on the website: https://sv-lang.com
## Installation
pyslang can be installed like any other Python library, using (a recent version of) the Python package manager `pip`, on Linux, macOS, and Windows:
```
pip install pyslang
```
or, to update your installed version to the latest release:
```
pip install -U pyslang
```
or, to checkout and install a local build:
```
git clone https://github.com/MikePopoloski/pyslang.git
cd pyslang
git submodule update --init --recursive
pip install .
```
## Example usage
Given a 'test.sv' source file:
```sv
module memory(
address,
data_in,
data_out,
read_write,
chip_en
);
input wire [7:0] address, data_in;
output reg [7:0] data_out;
input wire read_write, chip_en;
reg [7:0] mem [0:255];
always @ (address or data_in or read_write or chip_en)
if (read_write == 1 && chip_en == 1) begin
mem[address] = data_in;
end
always @ (read_write or chip_en or address)
if (read_write == 0 && chip_en)
data_out = mem[address];
else
data_out = 0;
endmodule
```
We can use slang to load the syntax tree and inspect it:
```py
import pyslang
tree = pyslang.SyntaxTree.fromFile('test.sv')
mod = tree.root.members[0]
print(mod.header.name.value)
print(mod.members[0].kind)
print(mod.members[1].header.dataType)
```
```
memory
SyntaxKind.PortDeclaration
reg [7:0]
```
We can also evaluate arbitrary SystemVerilog expressions:
```py
session = pyslang.ScriptSession()
session.eval("logic bit_arr [16] = '{0:1, 1:1, 2:1, default:0};")
result = session.eval("bit_arr.sum with ( int'(item) );")
print(result)
```
```
3
```
## Contact & Support
If you encounter a bug, have questions, or want to contribute, please get in touch by opening a GitHub issue or posting a message on Gitter.
Contributions are welcome, whether they be in the form of bug reports, comments, suggestions, documentation improvements, or full fledged new features via pull requests.
## License
slang (and pyslang) is licensed under the MIT license:
> Copyright (c) 2015-2024 Michael Popoloski
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
Raw data
{
"_id": null,
"home_page": null,
"name": "pyslang",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "slang, verilog, systemverilog, parsing, compiler, eda",
"author": "Mike Popoloski",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/7a/9a/ee8cd9a1e97f3bbfd30e8f3f1ceeb732fd1c9909c295706d3a182da2ad06/pyslang-7.0.1.tar.gz",
"platform": null,
"description": "# pyslang - Language bindings for slang, SystemVerilog parsing and compilation library\n\n[![build](https://github.com/MikePopoloski/pyslang/actions/workflows/build.yml/badge.svg)](https://github.com/MikePopoloski/pyslang/actions/workflows/build.yml)\n[![PyPI](https://img.shields.io/pypi/v/pyslang.svg)](https://pypi.org/project/pyslang/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/MikePopoloski/pyslang/blob/master/LICENSE)\n[![Join the chat at https://gitter.im/MikePopoloski/slang](https://badges.gitter.im/MikePopoloski/slang.svg)](https://gitter.im/MikePopoloski/slang?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)\n\nslang is a software library that provides various components for lexing, parsing, type checking, and elaborating SystemVerilog code. pyslang exposes that library\nto Python projects.\n\nFull documentation is available on the website: https://sv-lang.com\n\n## Installation\npyslang can be installed like any other Python library, using (a recent version of) the Python package manager `pip`, on Linux, macOS, and Windows:\n```\npip install pyslang\n```\nor, to update your installed version to the latest release:\n```\npip install -U pyslang\n```\nor, to checkout and install a local build:\n```\ngit clone https://github.com/MikePopoloski/pyslang.git\ncd pyslang\ngit submodule update --init --recursive\npip install .\n```\n\n## Example usage\n\nGiven a 'test.sv' source file:\n```sv\nmodule memory(\n address,\n data_in,\n data_out,\n read_write,\n chip_en\n );\n\n input wire [7:0] address, data_in;\n output reg [7:0] data_out;\n input wire read_write, chip_en;\n\n reg [7:0] mem [0:255];\n\n always @ (address or data_in or read_write or chip_en)\n if (read_write == 1 && chip_en == 1) begin\n mem[address] = data_in;\n end\n\n always @ (read_write or chip_en or address)\n if (read_write == 0 && chip_en)\n data_out = mem[address];\n else\n data_out = 0;\n\nendmodule\n```\n\nWe can use slang to load the syntax tree and inspect it:\n```py\nimport pyslang\n\ntree = pyslang.SyntaxTree.fromFile('test.sv')\nmod = tree.root.members[0]\nprint(mod.header.name.value)\nprint(mod.members[0].kind)\nprint(mod.members[1].header.dataType)\n```\n\n```\nmemory\nSyntaxKind.PortDeclaration\nreg [7:0]\n```\n\nWe can also evaluate arbitrary SystemVerilog expressions:\n```py\nsession = pyslang.ScriptSession()\nsession.eval(\"logic bit_arr [16] = '{0:1, 1:1, 2:1, default:0};\")\nresult = session.eval(\"bit_arr.sum with ( int'(item) );\")\nprint(result)\n```\n\n```\n3\n```\n\n## Contact & Support\n\nIf you encounter a bug, have questions, or want to contribute, please get in touch by opening a GitHub issue or posting a message on Gitter.\n\nContributions are welcome, whether they be in the form of bug reports, comments, suggestions, documentation improvements, or full fledged new features via pull requests.\n\n## License\n\nslang (and pyslang) is licensed under the MIT license:\n\n> Copyright (c) 2015-2024 Michael Popoloski\n>\n> Permission is hereby granted, free of charge, to any person obtaining a copy\n> of this software and associated documentation files (the \"Software\"), to deal\n> in the Software without restriction, including without limitation the rights\n> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n> copies of the Software, and to permit persons to whom the Software is\n> furnished to do so, subject to the following conditions:\n>\n> The above copyright notice and this permission notice shall be included in\n> all copies or substantial portions of the Software.\n>\n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n> THE SOFTWARE.\n",
"bugtrack_url": null,
"license": null,
"summary": "Python bindings for slang, a library for compiling SystemVerilog",
"version": "7.0.1",
"project_urls": {
"Changelog": "https://github.com/MikePopoloski/slang/blob/master/CHANGELOG.md",
"Documentation": "https://sv-lang.com/",
"Homepage": "https://sv-lang.com/",
"Issues": "https://github.com/MikePopoloski/slang/issues",
"Repository": "https://github.com/MikePopoloski/pyslang"
},
"split_keywords": [
"slang",
" verilog",
" systemverilog",
" parsing",
" compiler",
" eda"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "72e415652cc15ae5c308a6c49103964c3743fbe7cf9cd744cdda7c71b26e76c7",
"md5": "14f943a5d1c0b1ff9164b28a92afee3c",
"sha256": "ad24c46091615fcbf5ec743049633395d39e80e27d4200bc9a79e25193e95a37"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp310-cp310-macosx_10_15_universal2.whl",
"has_sig": false,
"md5_digest": "14f943a5d1c0b1ff9164b28a92afee3c",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 5894865,
"upload_time": "2024-11-03T22:26:07",
"upload_time_iso_8601": "2024-11-03T22:26:07.709647Z",
"url": "https://files.pythonhosted.org/packages/72/e4/15652cc15ae5c308a6c49103964c3743fbe7cf9cd744cdda7c71b26e76c7/pyslang-7.0.1-cp310-cp310-macosx_10_15_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fe41efd333eae5fe26d5b0b2335e7c5fa31a43d66068463571f039ac75a3979f",
"md5": "11abf4835743ca2dddb15ced88211c43",
"sha256": "66e7e76a511c1b8d1ddce58210cf33488607ed21e75af8d3a1d2ab42429ca1a0"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "11abf4835743ca2dddb15ced88211c43",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 2815197,
"upload_time": "2024-11-03T22:26:09",
"upload_time_iso_8601": "2024-11-03T22:26:09.682470Z",
"url": "https://files.pythonhosted.org/packages/fe/41/efd333eae5fe26d5b0b2335e7c5fa31a43d66068463571f039ac75a3979f/pyslang-7.0.1-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b02010a51573830d49501bad7133ca04782cada0542006564de0def779d68ce7",
"md5": "c15db098fcfde186a48690c17415b03d",
"sha256": "1054dfdfab1fc168d00e55119aa7067f27a5de902c765d7f19647cdea5edaeda"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "c15db098fcfde186a48690c17415b03d",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 3888329,
"upload_time": "2024-11-03T22:26:11",
"upload_time_iso_8601": "2024-11-03T22:26:11.777655Z",
"url": "https://files.pythonhosted.org/packages/b0/20/10a51573830d49501bad7133ca04782cada0542006564de0def779d68ce7/pyslang-7.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "af7297e27112ed43642e6d749b3faa4315bb384c085c94512776f18976776d37",
"md5": "d35efd5ed8f73722359b3d3c82954cc3",
"sha256": "a081c875a079327050fc65a49b12d4882e0c45932472b3e756e7f5b24eba5de3"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "d35efd5ed8f73722359b3d3c82954cc3",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 2335257,
"upload_time": "2024-11-03T22:26:13",
"upload_time_iso_8601": "2024-11-03T22:26:13.538686Z",
"url": "https://files.pythonhosted.org/packages/af/72/97e27112ed43642e6d749b3faa4315bb384c085c94512776f18976776d37/pyslang-7.0.1-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ed8ac6207428fd9e15a93e8949067ce14a852aacf6c0c5aac7cb42f9a5c5c64b",
"md5": "35f6e732c0570759eedba92b2b1e3355",
"sha256": "2ac0af33c675baa5efb11d34e4b62a09d744ec2aa83de12c18cf4a0f05c8de27"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp311-cp311-macosx_10_15_universal2.whl",
"has_sig": false,
"md5_digest": "35f6e732c0570759eedba92b2b1e3355",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 5896852,
"upload_time": "2024-11-03T22:26:15",
"upload_time_iso_8601": "2024-11-03T22:26:15.232956Z",
"url": "https://files.pythonhosted.org/packages/ed/8a/c6207428fd9e15a93e8949067ce14a852aacf6c0c5aac7cb42f9a5c5c64b/pyslang-7.0.1-cp311-cp311-macosx_10_15_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e7ad157c526b186833681319a7914b1a57efafeb4e5c1ac6ed39324c5d93e028",
"md5": "fddd2f15e2cf5de8eb54d08ca1610cdd",
"sha256": "f6ac4e36c860206e37778024a495e6c7a82fa253036e62225b0b9287fc2f3f5b"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "fddd2f15e2cf5de8eb54d08ca1610cdd",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 2816240,
"upload_time": "2024-11-03T22:26:17",
"upload_time_iso_8601": "2024-11-03T22:26:17.168866Z",
"url": "https://files.pythonhosted.org/packages/e7/ad/157c526b186833681319a7914b1a57efafeb4e5c1ac6ed39324c5d93e028/pyslang-7.0.1-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "40669197625c810f85390c03eac7f8bb4df832f170ed0b17e1b5b6de236e8e53",
"md5": "ffbf8dd59c4e8fd4eb279c74fe4be461",
"sha256": "0bfaaa92ab340e4b3c9d23be6163ad0c846cd3a09074cee1959f0d8f90615819"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "ffbf8dd59c4e8fd4eb279c74fe4be461",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 3890999,
"upload_time": "2024-11-03T22:26:18",
"upload_time_iso_8601": "2024-11-03T22:26:18.839369Z",
"url": "https://files.pythonhosted.org/packages/40/66/9197625c810f85390c03eac7f8bb4df832f170ed0b17e1b5b6de236e8e53/pyslang-7.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "132bc0ee34fe980bc4fa83bbbb001c5be2296187306c84d000ab61528c306dde",
"md5": "0b832bdd31e5219e43a3ed0b6959425f",
"sha256": "529b149f94a4e450e1fc2d610f7f6ffb4ba941037a1dceaaf20a00ba0c8d4522"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "0b832bdd31e5219e43a3ed0b6959425f",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 2336750,
"upload_time": "2024-11-03T22:26:20",
"upload_time_iso_8601": "2024-11-03T22:26:20.608937Z",
"url": "https://files.pythonhosted.org/packages/13/2b/c0ee34fe980bc4fa83bbbb001c5be2296187306c84d000ab61528c306dde/pyslang-7.0.1-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "18f0ff489700b5886bf759ea71d28f05a0206aeda9855e1662ed556b9fc2ee66",
"md5": "b9f93e1e61bd2d6fcaf483b4f602dcfd",
"sha256": "e6d1083e7c3d2694480884d51b5b7bbcf087c064ba9c5a248c3f9e7d1fd29ac2"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp312-cp312-macosx_10_15_universal2.whl",
"has_sig": false,
"md5_digest": "b9f93e1e61bd2d6fcaf483b4f602dcfd",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 5996362,
"upload_time": "2024-11-03T22:26:22",
"upload_time_iso_8601": "2024-11-03T22:26:22.273470Z",
"url": "https://files.pythonhosted.org/packages/18/f0/ff489700b5886bf759ea71d28f05a0206aeda9855e1662ed556b9fc2ee66/pyslang-7.0.1-cp312-cp312-macosx_10_15_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b3c75ec6bd5b4aabd8dea4641599dcfa3105b79a3e1c108cbd576f30ff693329",
"md5": "349c37c147c532acb9fc2ebdc40031bd",
"sha256": "30e1f0dc21eba815e113deb67e34b8c36c36e538976c6f8e2a77132408d4fe06"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "349c37c147c532acb9fc2ebdc40031bd",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 2843193,
"upload_time": "2024-11-03T22:26:24",
"upload_time_iso_8601": "2024-11-03T22:26:24.089826Z",
"url": "https://files.pythonhosted.org/packages/b3/c7/5ec6bd5b4aabd8dea4641599dcfa3105b79a3e1c108cbd576f30ff693329/pyslang-7.0.1-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7140eec1faa5bac788558def44e3d629531118cb8925f4c631ed17d35d76adfd",
"md5": "e07ff4a7bfdeda5210bf68b24c37bef3",
"sha256": "f31180ceb1dd955e2111183e1f68ef9838b8d16fc16388bfac92e07e4d599607"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "e07ff4a7bfdeda5210bf68b24c37bef3",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 3884734,
"upload_time": "2024-11-03T22:26:26",
"upload_time_iso_8601": "2024-11-03T22:26:26.095771Z",
"url": "https://files.pythonhosted.org/packages/71/40/eec1faa5bac788558def44e3d629531118cb8925f4c631ed17d35d76adfd/pyslang-7.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d9320aeb79ac30d1849d8e2e70930e838284ab5a17b6fab8f95b82cba8185e98",
"md5": "76464c46c7070c6369599778894e07fe",
"sha256": "94ab0c7bb22d3e558b73f973ea72a9d45be29fee58f59fbb1a773e85e5e1b3cd"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "76464c46c7070c6369599778894e07fe",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 2348045,
"upload_time": "2024-11-03T22:26:27",
"upload_time_iso_8601": "2024-11-03T22:26:27.922754Z",
"url": "https://files.pythonhosted.org/packages/d9/32/0aeb79ac30d1849d8e2e70930e838284ab5a17b6fab8f95b82cba8185e98/pyslang-7.0.1-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1ccfe2c007f531e55fb3832bb9e335f791327889d85430e10ae77a7abed44313",
"md5": "32aff7fa784f3d49689123ebd383a8ce",
"sha256": "4daa947d1c4b4b5921fef1a0f143b4ef062fff45a3d32913057af418c8f20034"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp313-cp313-macosx_10_15_universal2.whl",
"has_sig": false,
"md5_digest": "32aff7fa784f3d49689123ebd383a8ce",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": null,
"size": 5996381,
"upload_time": "2024-11-03T22:26:29",
"upload_time_iso_8601": "2024-11-03T22:26:29.574132Z",
"url": "https://files.pythonhosted.org/packages/1c/cf/e2c007f531e55fb3832bb9e335f791327889d85430e10ae77a7abed44313/pyslang-7.0.1-cp313-cp313-macosx_10_15_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "bfbde4aa2de409bd70dca162caa0471e1ecc596ce082440e82d3547fb1ebbfe8",
"md5": "c3df7b09059f5317523ba896a9aac8ec",
"sha256": "c311000d7225960d88fd7bfb0cb4315b9ad97460605f9564b3ca228cdc87c00b"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "c3df7b09059f5317523ba896a9aac8ec",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": null,
"size": 2842998,
"upload_time": "2024-11-03T22:26:31",
"upload_time_iso_8601": "2024-11-03T22:26:31.390701Z",
"url": "https://files.pythonhosted.org/packages/bf/bd/e4aa2de409bd70dca162caa0471e1ecc596ce082440e82d3547fb1ebbfe8/pyslang-7.0.1-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "bef9c0fd3b6239e81caf375aaf7181d92bb5e164f74b024c2c334761bb24542c",
"md5": "b45c22164b9aa75797760b865fe38481",
"sha256": "fe142d56e1d58d9285689d93690adf24961b2d4957d985b053356b330ad7b81b"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "b45c22164b9aa75797760b865fe38481",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": null,
"size": 3884848,
"upload_time": "2024-11-03T22:26:33",
"upload_time_iso_8601": "2024-11-03T22:26:33.274713Z",
"url": "https://files.pythonhosted.org/packages/be/f9/c0fd3b6239e81caf375aaf7181d92bb5e164f74b024c2c334761bb24542c/pyslang-7.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b6b2bd6c1531c05d2d47b5e1bf846c76a182f6c5caad79e01d8c9aed015bf333",
"md5": "822803962112be5af2b87eedd714a719",
"sha256": "3e83d8a3cd74836db684a3cd36cf0c844adc1c07e620e8accb93b0bd28b0e5c5"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "822803962112be5af2b87eedd714a719",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": null,
"size": 2348137,
"upload_time": "2024-11-03T22:26:35",
"upload_time_iso_8601": "2024-11-03T22:26:35.117399Z",
"url": "https://files.pythonhosted.org/packages/b6/b2/bd6c1531c05d2d47b5e1bf846c76a182f6c5caad79e01d8c9aed015bf333/pyslang-7.0.1-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d7cea0ed051f93ee7ae3062f4dce057ade86466da046adc9654604fbc25f7483",
"md5": "6377104c08a9f79b34f76aacd82be95d",
"sha256": "240955d68c4f56b2438cc79380f3d480e51ed2c8e788d5be3a74485061e8355a"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp37-cp37m-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "6377104c08a9f79b34f76aacd82be95d",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 3992046,
"upload_time": "2024-11-03T22:26:36",
"upload_time_iso_8601": "2024-11-03T22:26:36.817342Z",
"url": "https://files.pythonhosted.org/packages/d7/ce/a0ed051f93ee7ae3062f4dce057ade86466da046adc9654604fbc25f7483/pyslang-7.0.1-cp37-cp37m-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a016a5a060f46b15fc164079e8b986b9fcc73a7063e5a04f5663da32f7c729f7",
"md5": "c81ce97f3c3ede1625536c3a3f7db5b5",
"sha256": "9a9da4a9e9008ffe4ee182fbf483d53f08e0f8a14d18b5019617dbc7db146fd3"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp37-cp37m-win_amd64.whl",
"has_sig": false,
"md5_digest": "c81ce97f3c3ede1625536c3a3f7db5b5",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2280378,
"upload_time": "2024-11-03T22:26:38",
"upload_time_iso_8601": "2024-11-03T22:26:38.099440Z",
"url": "https://files.pythonhosted.org/packages/a0/16/a5a060f46b15fc164079e8b986b9fcc73a7063e5a04f5663da32f7c729f7/pyslang-7.0.1-cp37-cp37m-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "75649557503958ed7cf726de52e5781e474c88d4654de952324f8c6de68f62bb",
"md5": "acfca671445545ee34e7955ae2762a02",
"sha256": "1be46adee98acb4109530ccfbac09917f269e3a008c850acc44fe8f35add0b4d"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp38-cp38-macosx_10_15_universal2.whl",
"has_sig": false,
"md5_digest": "acfca671445545ee34e7955ae2762a02",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 5894778,
"upload_time": "2024-11-03T22:26:39",
"upload_time_iso_8601": "2024-11-03T22:26:39.392641Z",
"url": "https://files.pythonhosted.org/packages/75/64/9557503958ed7cf726de52e5781e474c88d4654de952324f8c6de68f62bb/pyslang-7.0.1-cp38-cp38-macosx_10_15_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "db2d6e04b1ad7297da74c6ca9f8a7df2b6a22bec15c4952cefd4a15db3cbd26c",
"md5": "f7dd11ab0cf8ef46dc589d38acfcbf15",
"sha256": "24e95b7c5f1f94f0b60bf4d8c0a7358dbf8ce7ffcf14747d5f6e035b0fb33f4e"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp38-cp38-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "f7dd11ab0cf8ef46dc589d38acfcbf15",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 2815379,
"upload_time": "2024-11-03T22:26:41",
"upload_time_iso_8601": "2024-11-03T22:26:41.498087Z",
"url": "https://files.pythonhosted.org/packages/db/2d/6e04b1ad7297da74c6ca9f8a7df2b6a22bec15c4952cefd4a15db3cbd26c/pyslang-7.0.1-cp38-cp38-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9028abd8dfdc60c02898bdcb90aa674c22ef680ee970f43640d9b539be620a2d",
"md5": "4378ae9c5056801bc313ec8e3f6187cb",
"sha256": "c38d2dacb61b63d6232e3be9953b9f0c67fe3fd3c9d0c1e61c06701602a667f8"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "4378ae9c5056801bc313ec8e3f6187cb",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 3888579,
"upload_time": "2024-11-03T22:26:42",
"upload_time_iso_8601": "2024-11-03T22:26:42.886631Z",
"url": "https://files.pythonhosted.org/packages/90/28/abd8dfdc60c02898bdcb90aa674c22ef680ee970f43640d9b539be620a2d/pyslang-7.0.1-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "08b57c30aeceb45a2217169629b2755568eaf2156589ef6ef4072100e67df56e",
"md5": "ed9ba518e17fae4c435960b2608bffed",
"sha256": "f4d7b74b6378a6ea64788ad49ff175fdc43e5bce867908b98138d60da33728fd"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp38-cp38-win_amd64.whl",
"has_sig": false,
"md5_digest": "ed9ba518e17fae4c435960b2608bffed",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 2335747,
"upload_time": "2024-11-03T22:26:44",
"upload_time_iso_8601": "2024-11-03T22:26:44.442377Z",
"url": "https://files.pythonhosted.org/packages/08/b5/7c30aeceb45a2217169629b2755568eaf2156589ef6ef4072100e67df56e/pyslang-7.0.1-cp38-cp38-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8948000d8b01282cc4a349f2c9116e53d30fc465fd87947094952241ca31314b",
"md5": "2930947b2e49c37f477e9d63f10e109d",
"sha256": "25092f82c0658721eabffa3dee49218fd2a30ed3d412c01f03dbdee041d848f3"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp39-cp39-macosx_10_15_universal2.whl",
"has_sig": false,
"md5_digest": "2930947b2e49c37f477e9d63f10e109d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 5895014,
"upload_time": "2024-11-03T22:26:46",
"upload_time_iso_8601": "2024-11-03T22:26:46.114785Z",
"url": "https://files.pythonhosted.org/packages/89/48/000d8b01282cc4a349f2c9116e53d30fc465fd87947094952241ca31314b/pyslang-7.0.1-cp39-cp39-macosx_10_15_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "390506153106976a17d0295be6024ea9027ef0e0f69bd5c0b49b2e54553df627",
"md5": "3d05eb89471563fd57a990a31abf2b03",
"sha256": "358e8eb431ec3a196099853a18a71a01f2237e04e7e2ba6babcb90f1f6bb0bd8"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "3d05eb89471563fd57a990a31abf2b03",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 2815453,
"upload_time": "2024-11-03T22:26:48",
"upload_time_iso_8601": "2024-11-03T22:26:48.073478Z",
"url": "https://files.pythonhosted.org/packages/39/05/06153106976a17d0295be6024ea9027ef0e0f69bd5c0b49b2e54553df627/pyslang-7.0.1-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3c71e3c5d21272841faeb7395e66e855a8c13b00a32d76604e6123b43cf84ee5",
"md5": "0c803b727600068c2f039a5373586a36",
"sha256": "6ff160252acccd9036915ee644d90acf13ec53c1a80275a6aa6975b5acc05692"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "0c803b727600068c2f039a5373586a36",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 3889455,
"upload_time": "2024-11-03T22:26:49",
"upload_time_iso_8601": "2024-11-03T22:26:49.472883Z",
"url": "https://files.pythonhosted.org/packages/3c/71/e3c5d21272841faeb7395e66e855a8c13b00a32d76604e6123b43cf84ee5/pyslang-7.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e47028bf0908f1c3bd8c10b7b8f41d6926539a4159edc74fca37796fe47042bf",
"md5": "a6c3dc6329d59f32a4417bc6765cbb37",
"sha256": "7b9d724ff00a72fc55e632ad0a1ebdefa56e3e8b680e0d279940fa34f24e854d"
},
"downloads": -1,
"filename": "pyslang-7.0.1-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "a6c3dc6329d59f32a4417bc6765cbb37",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 2610155,
"upload_time": "2024-11-03T22:26:50",
"upload_time_iso_8601": "2024-11-03T22:26:50.807434Z",
"url": "https://files.pythonhosted.org/packages/e4/70/28bf0908f1c3bd8c10b7b8f41d6926539a4159edc74fca37796fe47042bf/pyslang-7.0.1-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7a9aee8cd9a1e97f3bbfd30e8f3f1ceeb732fd1c9909c295706d3a182da2ad06",
"md5": "6f1917ac8e1775a33bc54e514272f75c",
"sha256": "836055bff8fa8103b7cf65179df4a1eae03bda07e19380e8ec2110ab9070a143"
},
"downloads": -1,
"filename": "pyslang-7.0.1.tar.gz",
"has_sig": false,
"md5_digest": "6f1917ac8e1775a33bc54e514272f75c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1161863,
"upload_time": "2024-11-03T22:26:52",
"upload_time_iso_8601": "2024-11-03T22:26:52.434523Z",
"url": "https://files.pythonhosted.org/packages/7a/9a/ee8cd9a1e97f3bbfd30e8f3f1ceeb732fd1c9909c295706d3a182da2ad06/pyslang-7.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-03 22:26:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "MikePopoloski",
"github_project": "slang",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "pyslang"
}