mirror of
https://github.com/tiennm99/serena.git
synced 2026-10-13 00:15:05 +00:00
Merge branch 'main' into improve-search-for-pattern-performance
This commit is contained in:
commit
8c83838d52
2 files changed
+72
-5
No files matched your search
+61
-1
@@ -1,4 +1,64 @@
|
||||
#
|
||||
# macOS specific files
|
||||
.DS_Store
|
||||
.AppleDouble
|
||||
.LSOverride
|
||||
._*
|
||||
.Spotlight-V100
|
||||
.Trashes
|
||||
Icon
|
||||
.fseventsd
|
||||
.DocumentRevisions-V100
|
||||
.TemporaryItems
|
||||
.VolumeIcon.icns
|
||||
.com.apple.timemachine.donotpresent
|
||||
|
||||
# Windows specific files
|
||||
Thumbs.db
|
||||
Thumbs.db:encryptable
|
||||
ehthumbs.db
|
||||
ehthumbs_vista.db
|
||||
*.stackdump
|
||||
[Dd]esktop.ini
|
||||
$RECYCLE.BIN/
|
||||
*.cab
|
||||
*.msi
|
||||
*.msix
|
||||
*.msm
|
||||
*.msp
|
||||
*.lnk
|
||||
|
||||
# Linux specific files
|
||||
*~
|
||||
.fuse_hidden*
|
||||
.directory
|
||||
.Trash-*
|
||||
.nfs*
|
||||
|
||||
# IDE/Text Editors
|
||||
# VS Code
|
||||
.vscode/*
|
||||
!.vscode/settings.json
|
||||
!.vscode/tasks.json
|
||||
!.vscode/launch.json
|
||||
!.vscode/extensions.json
|
||||
*.code-workspace
|
||||
.history/
|
||||
|
||||
# JetBrains IDEs (beyond .idea/)
|
||||
*.iml
|
||||
*.ipr
|
||||
*.iws
|
||||
out/
|
||||
.idea_modules/
|
||||
|
||||
# Sublime Text
|
||||
*.tmlanguage.cache
|
||||
*.tmPreferences.cache
|
||||
*.stTheme.cache
|
||||
*.sublime-workspace
|
||||
*.sublime-project
|
||||
|
||||
# Project specific ignore
|
||||
.idea
|
||||
temp
|
||||
|
||||
|
||||
+11
-4
@@ -38,9 +38,15 @@ class SymbolLocation:
|
||||
the column number in which the symbol identifier is defined (if the symbol is a function, class, etc.);
|
||||
may be None for some types of symbols (e.g. SymbolKind.File)
|
||||
"""
|
||||
end_line: int | None
|
||||
end_line: int | None = None
|
||||
"""
|
||||
the line in which the symbol's body ends, may be None (e.g., if line is None)
|
||||
the line in which the symbol's body ends. For methods that search based on SymbolLocation,
|
||||
the end line is not needed, as it is unused by the language server in the search.
|
||||
However, the end_line will typically be included in the results of search methods,
|
||||
and thus be provided to the user in the response to such requests.
|
||||
This is useful for the LLMs, especially the less intelligent ones, as they often fail
|
||||
to perform symbolic operations and when falling back to line-editing tools, will just make up
|
||||
an end line.
|
||||
"""
|
||||
|
||||
def __post_init__(self) -> None:
|
||||
@@ -376,7 +382,8 @@ class SymbolManager:
|
||||
"""
|
||||
Find all symbols that reference the symbol at the given location.
|
||||
|
||||
:param symbol_location: the location of the symbol for which to find references
|
||||
:param symbol_location: the location of the symbol for which to find references.
|
||||
Does not need to include an end_line, as it is unused in the search.
|
||||
:param include_body: whether to include the body of all symbols in the result.
|
||||
Note: you can filter out the bodies of the children if you set include_children_body=False
|
||||
in the to_dict method.
|
||||
@@ -431,7 +438,7 @@ class SymbolManager:
|
||||
"""
|
||||
Replace the body of the symbol at the given location with the given body
|
||||
|
||||
:param location: the location of the symbol to replace
|
||||
:param location: the location of the symbol to replace.
|
||||
:param body: the new body
|
||||
"""
|
||||
# make sure body always ends with at least one newline
|
||||
|
||||
Reference in new issue
Block a user