BDEPEND=|| ( >=dev-lang/rust-bin-1.88.0:* >=dev-lang/rust-1.88.0:* ) DEFINED_PHASES=compile configure install setup test unpack DESCRIPTION=Structural search and rewrite of code by AST pattern EAPI=8 HOMEPAGE=https://ast-grep.github.io/ IUSE=debug KEYWORDS=~amd64 ~arm64 LICENSE=MIT Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 ISC MIT MIT-0 Unicode-3.0 RESTRICT=mirror SLOT=0 SRC_URI=https://github.com/ast-grep/ast-grep/archive/refs/tags/0.45.3.tar.gz -> ast-grep-0.45.3.tar.gz https://static.crates.io/crates/Inflector/Inflector-0.11.4.crate https://static.crates.io/crates/aho-corasick/aho-corasick-1.1.5.crate https://static.crates.io/crates/ansi_term/ansi_term-0.12.1.crate https://static.crates.io/crates/anstream/anstream-1.0.0.crate https://static.crates.io/crates/anstyle-parse/anstyle-parse-1.0.0.crate https://static.crates.io/crates/anstyle-query/anstyle-query-1.1.5.crate https://static.crates.io/crates/anstyle-wincon/anstyle-wincon-3.0.11.crate https://static.crates.io/crates/anstyle/anstyle-1.0.14.crate https://static.crates.io/crates/anyhow/anyhow-1.0.104.crate https://static.crates.io/crates/assert_cmd/assert_cmd-2.2.2.crate https://static.crates.io/crates/async-trait/async-trait-0.1.92.crate https://static.crates.io/crates/autocfg/autocfg-1.5.1.crate https://static.crates.io/crates/bit-set/bit-set-0.11.1.crate https://static.crates.io/crates/bit-vec/bit-vec-0.10.1.crate https://static.crates.io/crates/bitflags/bitflags-2.13.1.crate https://static.crates.io/crates/borrow-or-share/borrow-or-share-0.2.4.crate https://static.crates.io/crates/borsh-derive/borsh-derive-1.8.0.crate https://static.crates.io/crates/borsh/borsh-1.8.0.crate https://static.crates.io/crates/bstr/bstr-1.13.1.crate https://static.crates.io/crates/bumpalo/bumpalo-3.20.3.crate https://static.crates.io/crates/bytes/bytes-1.12.1.crate https://static.crates.io/crates/cast/cast-0.3.0.crate https://static.crates.io/crates/cc/cc-1.4.4.crate https://static.crates.io/crates/cfg-if/cfg-if-1.0.4.crate https://static.crates.io/crates/cfg_aliases/cfg_aliases-0.2.2.crate https://static.crates.io/crates/clap/clap-4.6.6.crate https://static.crates.io/crates/clap_builder/clap_builder-4.6.6.crate https://static.crates.io/crates/clap_complete/clap_complete-4.6.9.crate https://static.crates.io/crates/clap_derive/clap_derive-4.6.4.crate https://static.crates.io/crates/clap_lex/clap_lex-1.1.0.crate https://static.crates.io/crates/codespan-reporting/codespan-reporting-0.13.1.crate https://static.crates.io/crates/colorchoice/colorchoice-1.0.5.crate https://static.crates.io/crates/convert_case/convert_case-0.10.0.crate https://static.crates.io/crates/convert_case/convert_case-0.11.0.crate https://static.crates.io/crates/coolor/coolor-1.1.0.crate https://static.crates.io/crates/crokey-proc_macros/crokey-proc_macros-1.5.0.crate https://static.crates.io/crates/crokey/crokey-1.5.0.crate https://static.crates.io/crates/crossbeam-channel/crossbeam-channel-0.5.16.crate https://static.crates.io/crates/crossbeam-deque/crossbeam-deque-0.8.7.crate https://static.crates.io/crates/crossbeam-epoch/crossbeam-epoch-0.9.20.crate https://static.crates.io/crates/crossbeam-queue/crossbeam-queue-0.3.13.crate https://static.crates.io/crates/crossbeam-utils/crossbeam-utils-0.8.22.crate https://static.crates.io/crates/crossbeam/crossbeam-0.8.4.crate https://static.crates.io/crates/crossterm/crossterm-0.29.0.crate https://static.crates.io/crates/crossterm_winapi/crossterm_winapi-0.9.1.crate https://static.crates.io/crates/ctor/ctor-1.0.13.crate https://static.crates.io/crates/dashmap/dashmap-6.2.1.crate https://static.crates.io/crates/derive_more-impl/derive_more-impl-2.1.1.crate https://static.crates.io/crates/derive_more/derive_more-2.1.1.crate https://static.crates.io/crates/difflib/difflib-0.4.0.crate https://static.crates.io/crates/document-features/document-features-0.2.12.crate https://static.crates.io/crates/dyn-clone/dyn-clone-1.0.20.crate https://static.crates.io/crates/equivalent/equivalent-1.0.2.crate https://static.crates.io/crates/errno/errno-0.3.14.crate https://static.crates.io/crates/fastrand/fastrand-2.5.0.crate https://static.crates.io/crates/find-msvc-tools/find-msvc-tools-0.1.11.crate https://static.crates.io/crates/float-cmp/float-cmp-0.10.0.crate https://static.crates.io/crates/fluent-uri/fluent-uri-0.4.1.crate https://static.crates.io/crates/fnv/fnv-1.0.7.crate https://static.crates.io/crates/futures-channel/futures-channel-0.3.34.crate https://static.crates.io/crates/futures-core/futures-core-0.3.34.crate https://static.crates.io/crates/futures-executor/futures-executor-0.3.34.crate https://static.crates.io/crates/futures-io/futures-io-0.3.34.crate https://static.crates.io/crates/futures-macro/futures-macro-0.3.34.crate https://static.crates.io/crates/futures-sink/futures-sink-0.3.34.crate https://static.crates.io/crates/futures-task/futures-task-0.3.34.crate https://static.crates.io/crates/futures-util/futures-util-0.3.34.crate https://static.crates.io/crates/futures/futures-0.3.34.crate https://static.crates.io/crates/fuzzy-matcher/fuzzy-matcher-0.3.7.crate https://static.crates.io/crates/getrandom/getrandom-0.4.3.crate https://static.crates.io/crates/globset/globset-0.4.20.crate https://static.crates.io/crates/hashbrown/hashbrown-0.14.5.crate https://static.crates.io/crates/hashbrown/hashbrown-0.17.1.crate https://static.crates.io/crates/heck/heck-0.5.0.crate https://static.crates.io/crates/httparse/httparse-1.10.1.crate https://static.crates.io/crates/ignore/ignore-0.4.33.crate https://static.crates.io/crates/indexmap/indexmap-2.14.0.crate https://static.crates.io/crates/inquire/inquire-0.9.4.crate https://static.crates.io/crates/is_terminal_polyfill/is_terminal_polyfill-1.70.2.crate https://static.crates.io/crates/itoa/itoa-1.0.18.crate https://static.crates.io/crates/js-sys/js-sys-0.3.104.crate https://static.crates.io/crates/lazy-regex-proc_macros/lazy-regex-proc_macros-3.6.1.crate https://static.crates.io/crates/lazy-regex/lazy-regex-3.6.1.crate https://static.crates.io/crates/lazy_static/lazy_static-1.5.0.crate https://static.crates.io/crates/libc/libc-0.2.189.crate https://static.crates.io/crates/libloading/libloading-0.9.0.crate https://static.crates.io/crates/libm/libm-0.2.16.crate https://static.crates.io/crates/linux-raw-sys/linux-raw-sys-0.12.1.crate https://static.crates.io/crates/litrs/litrs-1.0.0.crate https://static.crates.io/crates/lock_api/lock_api-0.4.14.crate https://static.crates.io/crates/log/log-0.4.34.crate https://static.crates.io/crates/ls-types/ls-types-0.0.6.crate https://static.crates.io/crates/matchers/matchers-0.2.0.crate https://static.crates.io/crates/memchr/memchr-2.8.3.crate https://static.crates.io/crates/minicov/minicov-0.3.9.crate https://static.crates.io/crates/minimad/minimad-0.16.0.crate https://static.crates.io/crates/mio/mio-1.2.2.crate https://static.crates.io/crates/napi-build/napi-build-2.4.1.crate https://static.crates.io/crates/napi-derive-backend/napi-derive-backend-6.1.2.crate https://static.crates.io/crates/napi-derive/napi-derive-3.6.3.crate https://static.crates.io/crates/napi-sys/napi-sys-3.3.0.crate https://static.crates.io/crates/napi/napi-3.12.2.crate https://static.crates.io/crates/nix/nix-0.31.3.crate https://static.crates.io/crates/nohash-hasher/nohash-hasher-0.2.0.crate https://static.crates.io/crates/normalize-line-endings/normalize-line-endings-0.3.0.crate https://static.crates.io/crates/nu-ansi-term/nu-ansi-term-0.50.3.crate https://static.crates.io/crates/num-traits/num-traits-0.2.19.crate https://static.crates.io/crates/once_cell/once_cell-1.21.4.crate https://static.crates.io/crates/once_cell_polyfill/once_cell_polyfill-1.70.2.crate https://static.crates.io/crates/oorandom/oorandom-11.1.5.crate https://static.crates.io/crates/parking_lot/parking_lot-0.12.5.crate https://static.crates.io/crates/parking_lot_core/parking_lot_core-0.9.12.crate https://static.crates.io/crates/percent-encoding/percent-encoding-2.3.2.crate https://static.crates.io/crates/pin-project-lite/pin-project-lite-0.2.17.crate https://static.crates.io/crates/portable-atomic/portable-atomic-1.15.0.crate https://static.crates.io/crates/predicates-core/predicates-core-1.0.10.crate https://static.crates.io/crates/predicates-tree/predicates-tree-1.0.13.crate https://static.crates.io/crates/predicates/predicates-3.1.4.crate https://static.crates.io/crates/prettyplease/prettyplease-0.2.37.crate https://static.crates.io/crates/proc-macro-crate/proc-macro-crate-3.5.0.crate https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.107.crate https://static.crates.io/crates/pyo3-build-config/pyo3-build-config-0.29.2.crate https://static.crates.io/crates/pyo3-ffi/pyo3-ffi-0.29.2.crate https://static.crates.io/crates/pyo3-macros-backend/pyo3-macros-backend-0.29.2.crate https://static.crates.io/crates/pyo3-macros/pyo3-macros-0.29.2.crate https://static.crates.io/crates/pyo3/pyo3-0.29.2.crate https://static.crates.io/crates/pythonize/pythonize-0.29.0.crate https://static.crates.io/crates/quote/quote-1.0.47.crate https://static.crates.io/crates/r-efi/r-efi-6.0.0.crate https://static.crates.io/crates/redox_syscall/redox_syscall-0.5.18.crate https://static.crates.io/crates/ref-cast-impl/ref-cast-impl-1.0.27.crate https://static.crates.io/crates/ref-cast/ref-cast-1.0.27.crate https://static.crates.io/crates/regex-automata/regex-automata-0.4.18.crate https://static.crates.io/crates/regex-syntax/regex-syntax-0.8.11.crate https://static.crates.io/crates/regex/regex-1.13.1.crate https://static.crates.io/crates/rustc-hash/rustc-hash-2.1.3.crate https://static.crates.io/crates/rustc_version/rustc_version-0.4.1.crate https://static.crates.io/crates/rustix/rustix-1.1.4.crate https://static.crates.io/crates/rustversion/rustversion-1.0.23.crate https://static.crates.io/crates/ryu/ryu-1.0.23.crate https://static.crates.io/crates/same-file/same-file-1.0.6.crate https://static.crates.io/crates/schemafy_core/schemafy_core-0.6.0.crate https://static.crates.io/crates/schemafy_lib/schemafy_lib-0.6.0.crate https://static.crates.io/crates/schemars/schemars-1.2.2.crate https://static.crates.io/crates/schemars_derive/schemars_derive-1.2.2.crate https://static.crates.io/crates/scopeguard/scopeguard-1.2.0.crate https://static.crates.io/crates/semver/semver-1.0.28.crate https://static.crates.io/crates/serde-sarif/serde-sarif-0.8.0.crate https://static.crates.io/crates/serde-wasm-bindgen/serde-wasm-bindgen-0.6.5.crate https://static.crates.io/crates/serde/serde-1.0.229.crate https://static.crates.io/crates/serde_core/serde_core-1.0.229.crate https://static.crates.io/crates/serde_derive/serde_derive-1.0.229.crate https://static.crates.io/crates/serde_derive_internals/serde_derive_internals-0.30.0.crate https://static.crates.io/crates/serde_json/serde_json-1.0.151.crate https://static.crates.io/crates/serde_regex/serde_regex-1.2.0.crate https://static.crates.io/crates/serde_yaml/serde_yaml-0.9.34+deprecated.crate https://static.crates.io/crates/sharded-slab/sharded-slab-0.1.7.crate https://static.crates.io/crates/shlex/shlex-2.0.1.crate https://static.crates.io/crates/signal-hook-mio/signal-hook-mio-0.2.5.crate https://static.crates.io/crates/signal-hook-registry/signal-hook-registry-1.4.8.crate https://static.crates.io/crates/signal-hook/signal-hook-0.3.18.crate https://static.crates.io/crates/similar/similar-3.2.0.crate https://static.crates.io/crates/slab/slab-0.4.12.crate https://static.crates.io/crates/smallvec/smallvec-1.15.2.crate https://static.crates.io/crates/streaming-iterator/streaming-iterator-0.1.9.crate https://static.crates.io/crates/strict/strict-0.2.0.crate https://static.crates.io/crates/strsim/strsim-0.11.1.crate https://static.crates.io/crates/strum/strum-0.27.2.crate https://static.crates.io/crates/strum_macros/strum_macros-0.27.2.crate https://static.crates.io/crates/syn/syn-1.0.109.crate https://static.crates.io/crates/syn/syn-2.0.119.crate https://static.crates.io/crates/syn/syn-3.0.3.crate https://static.crates.io/crates/sync_wrapper/sync_wrapper-1.0.2.crate https://static.crates.io/crates/target-lexicon/target-lexicon-0.13.5.crate https://static.crates.io/crates/target-triple/target-triple-1.0.1.crate https://static.crates.io/crates/tempfile/tempfile-3.27.0.crate https://static.crates.io/crates/termcolor/termcolor-1.4.1.crate https://static.crates.io/crates/termimad/termimad-0.35.2.crate https://static.crates.io/crates/terminal-light/terminal-light-1.9.1.crate https://static.crates.io/crates/termtree/termtree-0.5.1.crate https://static.crates.io/crates/thiserror-impl/thiserror-impl-1.0.69.crate https://static.crates.io/crates/thiserror-impl/thiserror-impl-2.0.20.crate https://static.crates.io/crates/thiserror/thiserror-1.0.69.crate https://static.crates.io/crates/thiserror/thiserror-2.0.20.crate https://static.crates.io/crates/thread_local/thread_local-1.1.10.crate https://static.crates.io/crates/tokio-macros/tokio-macros-2.7.2.crate https://static.crates.io/crates/tokio-stream/tokio-stream-0.1.19.crate https://static.crates.io/crates/tokio-util/tokio-util-0.7.19.crate https://static.crates.io/crates/tokio/tokio-1.53.1.crate https://static.crates.io/crates/toml_datetime/toml_datetime-1.1.1+spec-1.1.0.crate https://static.crates.io/crates/toml_edit/toml_edit-0.25.13+spec-1.1.0.crate https://static.crates.io/crates/toml_parser/toml_parser-1.1.3+spec-1.1.0.crate https://static.crates.io/crates/toml_writer/toml_writer-1.1.2+spec-1.1.0.crate https://static.crates.io/crates/tower-layer/tower-layer-0.3.3.crate https://static.crates.io/crates/tower-lsp-server/tower-lsp-server-0.23.0.crate https://static.crates.io/crates/tower-service/tower-service-0.3.3.crate https://static.crates.io/crates/tower/tower-0.5.3.crate https://static.crates.io/crates/tracing-attributes/tracing-attributes-0.1.31.crate https://static.crates.io/crates/tracing-core/tracing-core-0.1.36.crate https://static.crates.io/crates/tracing-log/tracing-log-0.2.0.crate https://static.crates.io/crates/tracing-subscriber/tracing-subscriber-0.3.23.crate https://static.crates.io/crates/tracing/tracing-0.1.44.crate https://static.crates.io/crates/tree-sitter-bash/tree-sitter-bash-0.25.1.crate https://static.crates.io/crates/tree-sitter-c-sharp/tree-sitter-c-sharp-0.23.5.crate https://static.crates.io/crates/tree-sitter-c/tree-sitter-c-0.24.2.crate https://static.crates.io/crates/tree-sitter-cpp/tree-sitter-cpp-0.23.4.crate https://static.crates.io/crates/tree-sitter-css/tree-sitter-css-0.25.0.crate https://static.crates.io/crates/tree-sitter-dart/tree-sitter-dart-0.2.0.crate https://static.crates.io/crates/tree-sitter-elixir/tree-sitter-elixir-0.3.5.crate https://static.crates.io/crates/tree-sitter-go/tree-sitter-go-0.25.0.crate https://static.crates.io/crates/tree-sitter-haskell/tree-sitter-haskell-0.23.1.crate https://static.crates.io/crates/tree-sitter-hcl/tree-sitter-hcl-1.1.0.crate https://static.crates.io/crates/tree-sitter-html/tree-sitter-html-0.23.2.crate https://static.crates.io/crates/tree-sitter-java/tree-sitter-java-0.23.5.crate https://static.crates.io/crates/tree-sitter-javascript/tree-sitter-javascript-0.25.0.crate https://static.crates.io/crates/tree-sitter-json/tree-sitter-json-0.24.8.crate https://static.crates.io/crates/tree-sitter-kotlin-sg/tree-sitter-kotlin-sg-0.4.1.crate https://static.crates.io/crates/tree-sitter-language/tree-sitter-language-0.1.8.crate https://static.crates.io/crates/tree-sitter-lua/tree-sitter-lua-0.5.0.crate https://static.crates.io/crates/tree-sitter-md/tree-sitter-md-0.5.3.crate https://static.crates.io/crates/tree-sitter-nix/tree-sitter-nix-0.3.0.crate https://static.crates.io/crates/tree-sitter-php/tree-sitter-php-0.24.2.crate https://static.crates.io/crates/tree-sitter-python/tree-sitter-python-0.25.0.crate https://static.crates.io/crates/tree-sitter-ruby/tree-sitter-ruby-0.23.1.crate https://static.crates.io/crates/tree-sitter-rust/tree-sitter-rust-0.24.2.crate https://static.crates.io/crates/tree-sitter-scala/tree-sitter-scala-0.26.2.crate https://static.crates.io/crates/tree-sitter-solidity/tree-sitter-solidity-1.2.13.crate https://static.crates.io/crates/tree-sitter-swift/tree-sitter-swift-0.7.3.crate https://static.crates.io/crates/tree-sitter-typescript/tree-sitter-typescript-0.23.2.crate https://static.crates.io/crates/tree-sitter-yaml/tree-sitter-yaml-0.7.2.crate https://static.crates.io/crates/tree-sitter/tree-sitter-0.27.0.crate https://static.crates.io/crates/typed-builder-macro/typed-builder-macro-0.21.2.crate https://static.crates.io/crates/typed-builder/typed-builder-0.21.2.crate https://static.crates.io/crates/unicode-ident/unicode-ident-1.0.24.crate https://static.crates.io/crates/unicode-segmentation/unicode-segmentation-1.13.3.crate https://static.crates.io/crates/unicode-width/unicode-width-0.1.14.crate https://static.crates.io/crates/unicode-width/unicode-width-0.2.2.crate https://static.crates.io/crates/unsafe-libyaml/unsafe-libyaml-0.2.11.crate https://static.crates.io/crates/uriparse/uriparse-0.6.4.crate https://static.crates.io/crates/utf8parse/utf8parse-0.2.2.crate https://static.crates.io/crates/valuable/valuable-0.1.1.crate https://static.crates.io/crates/wait-timeout/wait-timeout-0.2.1.crate https://static.crates.io/crates/walkdir/walkdir-2.5.0.crate https://static.crates.io/crates/wasi/wasi-0.11.1+wasi-snapshot-preview1.crate https://static.crates.io/crates/wasm-bindgen-futures/wasm-bindgen-futures-0.4.77.crate https://static.crates.io/crates/wasm-bindgen-macro-support/wasm-bindgen-macro-support-0.2.127.crate https://static.crates.io/crates/wasm-bindgen-macro/wasm-bindgen-macro-0.2.127.crate https://static.crates.io/crates/wasm-bindgen-shared/wasm-bindgen-shared-0.2.127.crate https://static.crates.io/crates/wasm-bindgen-test-macro/wasm-bindgen-test-macro-0.3.77.crate https://static.crates.io/crates/wasm-bindgen-test-shared/wasm-bindgen-test-shared-0.2.127.crate https://static.crates.io/crates/wasm-bindgen-test/wasm-bindgen-test-0.3.77.crate https://static.crates.io/crates/wasm-bindgen/wasm-bindgen-0.2.127.crate https://static.crates.io/crates/winapi-i686-pc-windows-gnu/winapi-i686-pc-windows-gnu-0.4.0.crate https://static.crates.io/crates/winapi-util/winapi-util-0.1.11.crate https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate https://static.crates.io/crates/winapi/winapi-0.3.9.crate https://static.crates.io/crates/windows-link/windows-link-0.2.1.crate https://static.crates.io/crates/windows-sys/windows-sys-0.59.0.crate https://static.crates.io/crates/windows-sys/windows-sys-0.61.2.crate https://static.crates.io/crates/windows-targets/windows-targets-0.52.6.crate https://static.crates.io/crates/windows_aarch64_gnullvm/windows_aarch64_gnullvm-0.52.6.crate https://static.crates.io/crates/windows_aarch64_msvc/windows_aarch64_msvc-0.52.6.crate https://static.crates.io/crates/windows_i686_gnu/windows_i686_gnu-0.52.6.crate https://static.crates.io/crates/windows_i686_gnullvm/windows_i686_gnullvm-0.52.6.crate https://static.crates.io/crates/windows_i686_msvc/windows_i686_msvc-0.52.6.crate https://static.crates.io/crates/windows_x86_64_gnu/windows_x86_64_gnu-0.52.6.crate https://static.crates.io/crates/windows_x86_64_gnullvm/windows_x86_64_gnullvm-0.52.6.crate https://static.crates.io/crates/windows_x86_64_msvc/windows_x86_64_msvc-0.52.6.crate https://static.crates.io/crates/winnow/winnow-1.0.4.crate https://static.crates.io/crates/xterm-query/xterm-query-0.6.0.crate https://static.crates.io/crates/zmij/zmij-1.0.23.crate _eclasses_=cargo bff30f59ca59b09857b787ac644b2e4c flag-o-matic fd3558f73f6503093adee69adf41020d multiprocessing 45d0620f25c2f063ad6276ecd9ed9399 rust 71b6825bd86e342e1540c76cc6fe864b rust-toolchain 76468983281b0a7fc167ca224f84ecfd toolchain-funcs 58a918e3a42d0156f010dcfd43725be5 _md5_=a86696bd1c230525c552e943b53675ae