[package]
edition = "2024"
rust-version = "1.89"
name = "recoco-splitters"
version = "0.2.3"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Text splitters/parsers for Recoco, an all-Rust fork of CocoIndex with greater flexibility."
readme = "README.md"
categories = [
"parser-implementations",
"parsing",
"text-processing",
]
license = "Apache-2.0"
repository = "https://github.com/knitli/recoco"
[features]
all = [
"splitter-separator",
"splitter-recursive",
"c",
"c-sharp",
"cpp",
"css",
"fortran",
"go",
"html",
"java",
"javascript",
"json",
"kotlin",
"markdown",
"pascal",
"php",
"python",
"r",
"ruby",
"rust",
"scala",
"solidity",
"sql",
"swift",
"toml",
"typescript",
"xml",
"yaml",
]
c = ["dep:tree-sitter-c"]
c-sharp = ["dep:tree-sitter-c-sharp"]
cpp = ["dep:tree-sitter-cpp"]
css = ["dep:tree-sitter-css"]
default = [
"splitter-separator",
"splitter-recursive",
]
fortran = ["dep:tree-sitter-fortran"]
full = [
"all",
"pattern-matching",
]
go = ["dep:tree-sitter-go"]
html = ["dep:tree-sitter-html"]
java = ["dep:tree-sitter-java"]
javascript = ["dep:tree-sitter-javascript"]
json = ["dep:tree-sitter-json"]
kotlin = ["dep:tree-sitter-kotlin-ng"]
markdown = ["dep:tree-sitter-md"]
pascal = ["dep:tree-sitter-pascal"]
pattern-matching = [
"dep:anyhow",
"dep:globset",
]
php = ["dep:tree-sitter-php"]
python = ["dep:tree-sitter-python"]
r = ["dep:tree-sitter-r"]
ruby = ["dep:tree-sitter-ruby"]
rust = ["dep:tree-sitter-rust"]
scala = ["dep:tree-sitter-scala"]
solidity = ["dep:tree-sitter-solidity"]
splitter-recursive = [
"dep:regex",
"dep:tree-sitter",
"dep:tree-sitter-language",
"dep:unicase",
]
splitter-separator = ["dep:regex"]
sql = ["dep:tree-sitter-sequel"]
swift = ["dep:tree-sitter-swift"]
toml = ["dep:tree-sitter-toml-ng"]
typescript = ["dep:tree-sitter-typescript"]
xml = ["dep:tree-sitter-xml"]
yaml = ["dep:tree-sitter-yaml"]
[lib]
name = "recoco_splitters"
path = "src/lib.rs"
[[bench]]
name = "splitting"
path = "benches/splitting.rs"
harness = false
[dependencies.anyhow]
version = "1.0.100"
features = ["std"]
optional = true
[dependencies.cfg-if]
version = "1.0.4"
[dependencies.globset]
version = "0.4.18"
optional = true
[dependencies.regex]
version = "1.12.2"
optional = true
[dependencies.tree-sitter]
version = "0.25.10"
optional = true
[dependencies.tree-sitter-c]
version = "0.24.1"
optional = true
[dependencies.tree-sitter-c-sharp]
version = "0.23.1"
optional = true
[dependencies.tree-sitter-cpp]
version = "0.23.4"
optional = true
[dependencies.tree-sitter-css]
version = "0.23.2"
optional = true
[dependencies.tree-sitter-fortran]
version = "0.5.1"
optional = true
[dependencies.tree-sitter-go]
version = "0.23.4"
optional = true
[dependencies.tree-sitter-html]
version = "0.23.2"
optional = true
[dependencies.tree-sitter-java]
version = "0.23.5"
optional = true
[dependencies.tree-sitter-javascript]
version = "0.23.1"
optional = true
[dependencies.tree-sitter-json]
version = "0.24.8"
optional = true
[dependencies.tree-sitter-kotlin-ng]
version = "1.1.0"
optional = true
[dependencies.tree-sitter-language]
version = "0.1.7"
optional = true
[dependencies.tree-sitter-md]
version = "0.5.3"
optional = true
[dependencies.tree-sitter-pascal]
version = "0.10.2"
optional = true
[dependencies.tree-sitter-php]
version = "0.23.11"
optional = true
[dependencies.tree-sitter-python]
version = "0.23.6"
optional = true
[dependencies.tree-sitter-r]
version = "1.2.0"
optional = true
[dependencies.tree-sitter-ruby]
version = "0.23.1"
optional = true
[dependencies.tree-sitter-rust]
version = "0.24.0"
optional = true
[dependencies.tree-sitter-scala]
version = "0.24.0"
optional = true
[dependencies.tree-sitter-sequel]
version = "0.3.11"
optional = true
[dependencies.tree-sitter-solidity]
version = "1.2.13"
optional = true
[dependencies.tree-sitter-swift]
version = "0.7.1"
optional = true
[dependencies.tree-sitter-toml-ng]
version = "0.7.0"
optional = true
[dependencies.tree-sitter-typescript]
version = "0.23.2"
optional = true
[dependencies.tree-sitter-xml]
version = "0.7.0"
optional = true
[dependencies.tree-sitter-yaml]
version = "0.7.2"
optional = true
[dependencies.unicase]
version = "2.9.0"
optional = true
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]