Skip to main content

Python bindings to the Tree-sitter parsing library

Project description

Python Tree-sitter

CI pypi docs

This module provides Python bindings to the tree-sitter parsing library.

Installation

The package has no library dependencies and provides pre-compiled wheels for all major platforms.

[!NOTE] If your platform is not currently supported, please submit an issue on GitHub.

pip install tree-sitter

Usage

Setup

Install languages

Tree-sitter language implementations also provide pre-compiled binary wheels. Let's take Python as an example.

pip install tree-sitter-python

Then, you can load it as a Language object:

import tree_sitter_python as tspython
from tree_sitter import Language, Parser

PY_LANGUAGE = Language(tspython.language())

Basic parsing

Create a Parser and configure it to use a language:

parser = Parser(PY_LANGUAGE)

Parse some source code:

tree = parser.parse(
    bytes(
        """
def foo():
    if bar:
        baz()
""",
        "utf8"
    )
)

If you have your source code in some data structure other than a bytes object, you can pass a "read" callable to the parse function.

The read callable can use either the byte offset or point tuple to read from buffer and return source code as bytes object. An empty bytes object or None terminates parsing for that line. The bytes must be encoded as UTF-8 or UTF-16.

For example, to use the byte offset with UTF-8 encoding:

src = bytes(
    """
def foo():
    if bar:
        baz()
""",
    "utf8",
)


def read_callable_byte_offset(byte_offset, point):
    return src[byte_offset : byte_offset + 1]


tree = parser.parse(read_callable_byte_offset, encoding="utf8")

And to use the point:

src_lines = ["\n", "def foo():\n", "    if bar:\n", "        baz()\n"]


def read_callable_point(byte_offset, point):
    row, column = point
    if row >= len(src_lines) or column >= len(src_lines[row]):
        return None
    return src_lines[row][column:].encode("utf8")


tree = parser.parse(read_callable_point, encoding="utf8")

Inspect the resulting Tree:

root_node = tree.root_node
assert root_node.type == 'module'
assert root_node.start_point == (1, 0)
assert root_node.end_point == (4, 0)

function_node = root_node.children[0]
assert function_node.type == 'function_definition'
assert function_node.child_by_field_name('name').type == 'identifier'

function_name_node = function_node.children[1]
assert function_name_node.type == 'identifier'
assert function_name_node.start_point == (1, 4)
assert function_name_node.end_point == (1, 7)

function_body_node = function_node.child_by_field_name("body")

if_statement_node = function_body_node.child(0)
assert if_statement_node.type == "if_statement"

function_call_node = if_statement_node.child_by_field_name("consequence").child(0).child(0)
assert function_call_node.type == "call"

function_call_name_node = function_call_node.child_by_field_name("function")
assert function_call_name_node.type == "identifier"

function_call_args_node = function_call_node.child_by_field_name("arguments")
assert function_call_args_node.type == "argument_list"


assert str(root_node) == (
    "(module "
        "(function_definition "
            "name: (identifier) "
            "parameters: (parameters) "
            "body: (block "
                "(if_statement "
                    "condition: (identifier) "
                    "consequence: (block "
                        "(expression_statement (call "
                            "function: (identifier) "
                            "arguments: (argument_list))))))))"
)

Or, to use the byte offset with UTF-16 encoding:

parser.language = JAVASCRIPT
source_code = bytes("'😎' && '🐍'", "utf16")

def read(byte_position, _):
    return source_code[byte_position: byte_position + 2]

tree = parser.parse(read, encoding="utf16")
root_node = tree.root_node
statement_node = root_node.children[0]
binary_node = statement_node.children[0]
snake_node = binary_node.children[2]
snake = source_code[snake_node.start_byte:snake_node.end_byte]

assert binary_node.type == "binary_expression"
assert snake_node.type == "string"
assert snake.decode("utf16") == "'🐍'"

Walking syntax trees

If you need to traverse a large number of nodes efficiently, you can use a TreeCursor:

cursor = tree.walk()

assert cursor.node.type == "module"

assert cursor.goto_first_child()
assert cursor.node.type == "function_definition"

assert cursor.goto_first_child()
assert cursor.node.type == "def"

# Returns `False` because the `def` node has no children
assert not cursor.goto_first_child()

assert cursor.goto_next_sibling()
assert cursor.node.type == "identifier"

assert cursor.goto_next_sibling()
assert cursor.node.type == "parameters"

assert cursor.goto_parent()
assert cursor.node.type == "function_definition"

[!IMPORTANT] Keep in mind that the cursor can only walk into children of the node that it started from.

See examples/walk_tree.py for a complete example of iterating over every node in a tree.

Editing

When a source file is edited, you can edit the syntax tree to keep it in sync with the source:

new_src = src[:5] + src[5 : 5 + 2].upper() + src[5 + 2 :]

tree.edit(
    start_byte=5,
    old_end_byte=5,
    new_end_byte=5 + 2,
    start_point=(0, 5),
    old_end_point=(0, 5),
    new_end_point=(0, 5 + 2),
)

Then, when you're ready to incorporate the changes into a new syntax tree, you can call Parser.parse again, but pass in the old tree:

new_tree = parser.parse(new_src, tree)

This will run much faster than if you were parsing from scratch.

The Tree.changed_ranges method can be called on the old tree to return the list of ranges whose syntactic structure has been changed:

for changed_range in tree.changed_ranges(new_tree):
    print("Changed range:")
    print(f"  Start point {changed_range.start_point}")
    print(f"  Start byte {changed_range.start_byte}")
    print(f"  End point {changed_range.end_point}")
    print(f"  End byte {changed_range.end_byte}")

Pattern-matching

You can search for patterns in a syntax tree using a tree query:

query = PY_LANGUAGE.query(
    """
(function_definition
  name: (identifier) @function.def
  body: (block) @function.block)

(call
  function: (identifier) @function.call
  arguments: (argument_list) @function.args)
"""
)

Captures

captures = query.captures(tree.root_node)
assert len(captures) == 2
assert captures[0][0] == function_name_node
assert captures[0][1] == "function.def"

The Query.captures() method takes optional start_point, end_point, start_byte and end_byte keyword arguments, which can be used to restrict the query's range. Only one of the ..._byte or ..._point pairs need to be given to restrict the range. If all are omitted, the entire range of the passed node is used.

Matches

matches = query.matches(tree.root_node)
assert len(matches) == 2

# first match
assert matches[0][1]["function.def"] == function_name_node
assert matches[0][1]["function.block"] == function_body_node

# second match
assert matches[1][1]["function.call"] == function_call_name_node
assert matches[1][1]["function.args"] == function_call_args_node

The Query.matches() method takes the same optional arguments as Query.captures(). The difference between the two methods is that Query.matches() groups captures into matches, which is much more useful when your captures within a query relate to each other. It maps the capture's name to the node that was captured via a dictionary.

To try out and explore the code referenced in this README, check out examples/usage.py.

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

Uploaded Source

Built Distributions

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

tree_sitter-0.23.0-cp312-cp312-win_arm64.whl (101.3 kB view details)

Uploaded CPython 3.12Windows ARM64

tree_sitter-0.23.0-cp312-cp312-win_amd64.whl (116.7 kB view details)

Uploaded CPython 3.12Windows x86-64

tree_sitter-0.23.0-cp312-cp312-musllinux_1_2_x86_64.whl (564.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

tree_sitter-0.23.0-cp312-cp312-musllinux_1_2_aarch64.whl (553.4 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

tree_sitter-0.23.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (563.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

tree_sitter-0.23.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (549.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

tree_sitter-0.23.0-cp312-cp312-macosx_11_0_arm64.whl (130.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

tree_sitter-0.23.0-cp312-cp312-macosx_10_9_x86_64.whl (136.8 kB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

tree_sitter-0.23.0-cp311-cp311-win_arm64.whl (101.3 kB view details)

Uploaded CPython 3.11Windows ARM64

tree_sitter-0.23.0-cp311-cp311-win_amd64.whl (116.6 kB view details)

Uploaded CPython 3.11Windows x86-64

tree_sitter-0.23.0-cp311-cp311-musllinux_1_2_x86_64.whl (560.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

tree_sitter-0.23.0-cp311-cp311-musllinux_1_2_aarch64.whl (550.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

tree_sitter-0.23.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (559.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

tree_sitter-0.23.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (546.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

tree_sitter-0.23.0-cp311-cp311-macosx_11_0_arm64.whl (130.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

tree_sitter-0.23.0-cp311-cp311-macosx_10_9_x86_64.whl (136.5 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

tree_sitter-0.23.0-cp310-cp310-win_arm64.whl (101.4 kB view details)

Uploaded CPython 3.10Windows ARM64

tree_sitter-0.23.0-cp310-cp310-win_amd64.whl (116.8 kB view details)

Uploaded CPython 3.10Windows x86-64

tree_sitter-0.23.0-cp310-cp310-musllinux_1_2_x86_64.whl (559.3 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

tree_sitter-0.23.0-cp310-cp310-musllinux_1_2_aarch64.whl (549.4 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

tree_sitter-0.23.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (558.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

tree_sitter-0.23.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (545.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

tree_sitter-0.23.0-cp310-cp310-macosx_11_0_arm64.whl (130.2 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

tree_sitter-0.23.0-cp310-cp310-macosx_10_9_x86_64.whl (136.7 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

tree_sitter-0.23.0-cp39-cp39-win_arm64.whl (101.6 kB view details)

Uploaded CPython 3.9Windows ARM64

tree_sitter-0.23.0-cp39-cp39-win_amd64.whl (117.1 kB view details)

Uploaded CPython 3.9Windows x86-64

tree_sitter-0.23.0-cp39-cp39-musllinux_1_2_x86_64.whl (561.2 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

tree_sitter-0.23.0-cp39-cp39-musllinux_1_2_aarch64.whl (551.2 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

tree_sitter-0.23.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (560.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

tree_sitter-0.23.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (547.0 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

tree_sitter-0.23.0-cp39-cp39-macosx_11_0_arm64.whl (130.5 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

tree_sitter-0.23.0-cp39-cp39-macosx_10_9_x86_64.whl (137.0 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file tree-sitter-0.23.0.tar.gz.

File metadata

  • Download URL: tree-sitter-0.23.0.tar.gz
  • Upload date:
  • Size: 165.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for tree-sitter-0.23.0.tar.gz
Algorithm Hash digest
SHA256 4c0d186f262a6b186e155a327150064abbf02b5659f7bc580eb965374025f2c2
MD5 5e5cc9fa7f54ee9d523cf2eff50a561e
BLAKE2b-256 61878b37aebd12e386533fad099bcc33f9fff73fb2104b7ab79f91da57fee9e2

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp312-cp312-win_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 9ce17115a637793cf7313bfb336519b1803a263f3b1174faa259e52d7a778665
MD5 8a22919be25ef66e49ef8dd8d06e4210
BLAKE2b-256 361e696353f3c013511478cfb7985339a9a7166de4cbbf7cd420f3d354f0c5da

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 13eb219538cf3b24228aba891c8ab029490c821d8dc3bc8bc45e06a2cdc78ec5
MD5 0d80b38ce4286e111bfdb7509b42fdb6
BLAKE2b-256 ea9355ad27b146155d647c045c1b7260f39ca6cf02976a9f7f678919b5eafe0b

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c7b873dbc077eb295df921e47a82197b87a0d27275534ffb063cea5ec6ee0f5e
MD5 ba1a0dd3ee9e8c14b857925abe074bd9
BLAKE2b-256 1f82919e611818e985577ad7fa0107d45183e259bfa15839c797eee835282ab4

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2a0e26f59749e748accba04cf48287c463d2ff803156586d1d797c1b786f14ab
MD5 3a684a7e0907f64240cbdec81c35123b
BLAKE2b-256 333ed11e0f35a4eff457020508ad3e9533911976ae8f854d63b862b9557277ae

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eaf21159e0f07fe6307e096b81a92afcf5deb0ce95655d29b065d5a6c41f78b3
MD5 f2017ac0fabc42261f567e3b652afe6b
BLAKE2b-256 1db7b393ef1b9627417c61a6f0d99ebe400004d2da3af83a91faacde9113b815

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e62f810b7c4d65e1901dae3aea432c8de32ce7a35d63296f70cc99e84d1986d2
MD5 fa51434a6c60c6829d0f116266af6246
BLAKE2b-256 e26b21e3979c5b13b7a8b69a22ad6a4103fe9416bb443c3b2b6d043c00f64429

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3df65a4cd2e2d091097ae84a3f96828c0906c698684fdc1f7985b5a452d1045e
MD5 964f02d7286abf09de0f68af191ddf3c
BLAKE2b-256 f96528b527e80268b07e457eb4af090bf52c81b223565e03f5773b84871d4b9a

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b40e3c961fe1df761b62869a4fcb3949e00906633420684df6d7ba503869b854
MD5 2f2fcf98ea21d9d6ad27f90211087edc
BLAKE2b-256 9e36a85e410815687700d5c8d60bf49044083ebb07e2c0e2012b4319eb4fcea7

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp311-cp311-win_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 42bcb535047bc9a2dbd1f421cce0857ca5e28387e5add6757072c8c3b7fa796a
MD5 db0c66c91cf669556f214f6e7503bc09
BLAKE2b-256 0ae4173f62480eb0bae282514d54ae58a0e037e00f2ebef2b5dd527647aa2889

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6ecd7385c8851e3a7c9ed78bcad080c5535ac99534a67ba2392829c45f8c1b42
MD5 1f8bee9bf06ba128d6547b5df866ab42
BLAKE2b-256 625662a8722cb692a61720334573dbc7316fc3e1de1bec457327f7a3ee5a7ed2

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2c7617149fc541fb6296b620329fde7cf961dd375ae11f2418b52108110e65b2
MD5 56cd5a49fd075bf3d0a37409ff2d59ce
BLAKE2b-256 8a157a8d2370899526fd4ee0a057c47e25d87853c43d5a7915a19cb084675914

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 81ef25f8be8776b97196ca0627de1a66279bdf8ac69460a5dd658617414a8d58
MD5 ddd234ed4b746231a656c48f7818c383
BLAKE2b-256 f17283d09c44035e2cd57cf7a5f212219f5ca6db0d167b920d6879c70b44da62

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d81093c6e751b6a9042ea427efb92ae1ab93acaa6c748234d856630b616d8ed5
MD5 8e55059ef84bee6fed95e99f06636035
BLAKE2b-256 61f31814a2c6ff3ba3a82d6d4642394414f7b7393fb1898eeb41f9cde45ec512

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f9b2e3c27fee3db2c975eceff32d2135cb237cabaa266b7dfd51bdcb67e2919e
MD5 c34f7630a43954547720a19835e0d016
BLAKE2b-256 7780c49c3a8e7b9384e3c16012e7132dc335d43277ecceb0919eb6f113612156

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c01ab28d6e0afd670c4920b104aa3867f98327493d8ca6fc56376d28cd7bc148
MD5 cc95cdaea58a5c27837db63c4e8dd4fb
BLAKE2b-256 37d2e39459dc56bd5fc83f9dfa417c42cdb3555ca68b5f657740be24b7fa3296

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 81dc39e0281ec4318d59fe87d85b45143ffeb87b8dde5b841db17d68ac647cd8
MD5 6963a4d31dbb86a65b4f975a220b9a89
BLAKE2b-256 a82a85f2484de3f7d71c269d86d4e20d09e1266efc90470c7a5c6d692d1f515c

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp310-cp310-win_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 2e5cc4596b4705f8aedec14580126f3a7a28b2341990b84f34435a6dba5ad373
MD5 a9c576cc559f17a94fc6553424a68b54
BLAKE2b-256 046324cb468a9e6f39e62bfd51e45f93a63e6aa9b8d39057acafa4efdf08a261

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0766af549741c6b79440cec1d2ddfcf4688a416b82fbe2f0e7c1d9b0b35fe2db
MD5 d248930ec327c616a35c27ea5cda8472
BLAKE2b-256 b19f45b4badf1e9d8914020d8f59924cc48d6e073d338e7b7f7baa3fe9357cff

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d90bba4d92c4a4163d81a91a392af18910cc1ab6fef0b4e0d5c084808a3ca15e
MD5 4a01514a738233efb528115f9de28978
BLAKE2b-256 99c8c97ba46acb582df61ea2cb3562000b51a19bc9328e0d959688d06e563a6a

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f8d8a867de53a0ab6793aa43f35df7b98dc237ec18ac7ee6e9f8507dc21a13b0
MD5 44cdade3c7b9f308ba4b351d4ec577b1
BLAKE2b-256 acbcf1deebeaa9f691d1a9a5ecb8d13cb5f71f73d5dc4184892e702f11fde641

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7200107a042e2518808718dc6290033be698cd37f766af51832e3bacfbe2a275
MD5 1ebb3decaf6ad050f54237a340eb8dc3
BLAKE2b-256 d781d95c898ce093146ea9701ad12c5578ee749cf465cad1e2651b4f96bbe246

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d34291c42feef2d4d51c3cb87055c2430c5802f6cfca1c5d8ae07619a2bf7958
MD5 454b198c62caab0b08bfeac3fc7efb58
BLAKE2b-256 bddde803e90dcc1cab4cb85283332f6d4a909c7966529c4a80b63a21a7135e4e

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1a5adee1065f25d1d85cdb78d9d8e96aa211e840b3b700b35a52e4574a949748
MD5 de4fb9877681249dd74e209a6ce853fa
BLAKE2b-256 2b7227d231ec3267e201e5562e372e216e9a18242ff75b637824f8bed30b1def

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b5f6cb46166e9fe82542cad780afb7edf5fab30b75e85a61579dd0bf7afaa134
MD5 868e6df4af7bc6244b6c244a8c4ba05d
BLAKE2b-256 dfdfce66650d284cd45b91607e6aa489e5e0f9922312f2c66a72b9fa18ab54f5

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp39-cp39-win_arm64.whl.

File metadata

  • Download URL: tree_sitter-0.23.0-cp39-cp39-win_arm64.whl
  • Upload date:
  • Size: 101.6 kB
  • Tags: CPython 3.9, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for tree_sitter-0.23.0-cp39-cp39-win_arm64.whl
Algorithm Hash digest
SHA256 cbf71655813da4b210a72437ad7b7da4ab8788acfdde8c6b35f68877c61fae4a
MD5 ec0ffc01fa7e732b1e3d81833f3c5d98
BLAKE2b-256 fe98e8ae316122d706d6f637ec6bf82f66f6e13843b55d3c976d64d0ef2874bc

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: tree_sitter-0.23.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 117.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for tree_sitter-0.23.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 eff050b68930c2dfc0c521961612310615540e3999cce76123ea0a363772efc2
MD5 eed62c2e423d925f0de249e134ae6ebb
BLAKE2b-256 ac97ff7604a19d67209ab741a9692d728afc8e1edaba571f2b0706b6f5f8de4d

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 117d5e10d60cda830f0f5d88beaf45205a3c33439fce3a95da4a3448a483a4f9
MD5 c15c53a5a914693dd0cbb1e90c2fd4c3
BLAKE2b-256 73f485d08906f032ed22d341957a732b6403c596b445aca424030b860354ab9a

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2840e7ce7de7ee72af7a70333da263622dc4630d92ddb2e661c68054c479459d
MD5 2cd58784a47a33b83b3b2f7da5dff752
BLAKE2b-256 296b449b2e6bae8b187c8db21c05c2700da040413b9992b79e14ed162196593c

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 912b49c0a9152e5dbb064d60a962a5f012d97be387aa38adb13c6e970043870b
MD5 ace1fadb1bde3256ac9bd2235cd56454
BLAKE2b-256 8b33fdcf833817779832e15dd6db14541ecb6997ed8b9b690ccce7fca1e33d9f

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2f45ea0d5ce34c4836f73b3643680b384eebf23517a5194651419ac9c625ee75
MD5 623e93b73909b9dda4adf173570643aa
BLAKE2b-256 c1406475678ccda0da7f61db9faf5feb7d3dc26758060d2655822f5d6a058442

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3302349ae0c78a38b71aec8fc4353388bbae6960d38ed190e4382208c0218805
MD5 49ce809c4dad89bfb4be25f7eccfdd24
BLAKE2b-256 1563b7e7f52a314f75f2ebb53ed9a35b393848aff9d1d024799bcd3a13240905

See more details on using hashes here.

File details

Details for the file tree_sitter-0.23.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tree_sitter-0.23.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 747a8895cbd02e21d7e9980643853a79b98b2a1c93f990439091e242142c90d4
MD5 2bb1224b4d00c92a6e30424872c33d37
BLAKE2b-256 8d878b5ed9f6063a983cbaf94c8df2eb80c6a22ced7b77ecd65836ecb7ce8fb3

See more details on using hashes here.

Supported by

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