feat: add golang repository context support (#555)

dedup-snippet-at-index
Meng Zhang 2023-10-14 00:57:54 -07:00 committed by GitHub
parent 9dc5acb62e
commit b9df0eb260
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 50 additions and 0 deletions

11
Cargo.lock generated
View File

@ -3205,6 +3205,7 @@ dependencies = [
"tokio",
"tracing",
"tracing-test",
"tree-sitter-go",
"tree-sitter-python",
"tree-sitter-rust",
"tree-sitter-tags",
@ -3925,6 +3926,16 @@ dependencies = [
"regex",
]
[[package]]
name = "tree-sitter-go"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ad6d11f19441b961af2fda7f12f5d0dac325f6d6de83836a1d3750018cc5114"
dependencies = [
"cc",
"tree-sitter",
]
[[package]]
name = "tree-sitter-python"
version = "0.20.2"

View File

@ -21,6 +21,7 @@ file-rotate = "0.7.5"
tree-sitter-python = "0.20.2"
tree-sitter-rust = "0.20.3"
tree-sitter-typescript = "0.20.3"
tree-sitter-go = "0.20.0"
[dev-dependencies]
temp_testdir = "0.2"

View File

@ -0,0 +1,27 @@
(
(comment)* @doc
.
(function_declaration
name: (identifier) @name) @definition.function
(#strip! @doc "^//\\s*")
(#set-adjacent! @doc @definition.function)
)
(
(comment)* @doc
.
(method_declaration
name: (field_identifier) @name) @definition.method
(#strip! @doc "^//\\s*")
(#set-adjacent! @doc @definition.method)
)
(call_expression
function: [
(identifier) @name
(parenthesized_expression (identifier) @name)
(selector_expression field: (field_identifier) @name)
(parenthesized_expression (selector_expression field: (field_identifier) @name))
]) @reference.call
(type_declaration (type_spec name: (type_identifier) @name)) @definition.type

View File

@ -259,6 +259,17 @@ lazy_static! {
.unwrap(),
),
),
(
"go",
TagsConfigurationSync(
TagsConfiguration::new(
tree_sitter_go::language(),
include_str!("../queries/go.scm"),
"",
)
.unwrap(),
),
),
])
};
}