Class SymbolTree
java.lang.Object
com.github._1c_syntax.bsl.languageserver.context.symbol.SymbolTree
Символьное дерево документа. Содержит все символы документа, вложенные друг в друга по принципу родитель -> дети
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Список всех символов всех уровней (за исключением символа модуля документа), преобразованных в плоский список.<T> List<T>
getChildrenFlat
(Class<T> clazz) Список всех символов всех уровней указанного типа (за исключением символа модуля документа), преобразованных в плоский список.Список методов документа.Попытка поиска символа метода по узлу дерева разбора.getMethodSymbol
(String methodName) Поиск MethodSymbol в дереве по указанному имени (без учета регистра).Корневой символ модуля документа.Плоский список всех переменных документаПопытка поиска символа переменной по узлу дерева разбора.getVariableSymbol
(String variableName, SourceDefinedSymbol scopeSymbol) Поиск VariableSymbol в дереве по указанному имени (без учета регистра) и области объявления.int
hashCode()
toString()
-
Constructor Details
-
SymbolTree
-
-
Method Details
-
getChildren
- Returns:
- Список символов верхнего уровня за исключением символа модуля документа.
-
getChildrenFlat
Список всех символов всех уровней указанного типа (за исключением символа модуля документа), преобразованных в плоский список.- Type Parameters:
T
- тип искомого символа.- Parameters:
clazz
- класс искомого символа.- Returns:
- плоский список символов указанного типа.
-
getModuleLevelRegions
- Returns:
- Список областей, расположенных на верхнем уровне документа.
-
getRegionsFlat
- Returns:
- плоский список всех областей документа.
-
getMethodSymbol
Попытка поиска символа метода по узлу дерева разбора.Implementation note - Поиск осуществляется по месту определения метода (declaration).
- Parameters:
ctx
- узел дерева разбора документа.- Returns:
- найденный символ метода.
-
getMethodSymbol
Поиск MethodSymbol в дереве по указанному имени (без учета регистра).- Parameters:
methodName
- Имя метода- Returns:
- MethodSymbol, если он был найден в дереве символов.
-
getVariableSymbol
Попытка поиска символа переменной по узлу дерева разбора.Implementation note Поиск осуществляется по месту определения переменной (declaration).
- Parameters:
ctx
- узел дерева разбора документа.- Returns:
- найденный символ переменной.
-
getVariableSymbol
public Optional<VariableSymbol> getVariableSymbol(String variableName, SourceDefinedSymbol scopeSymbol) Поиск VariableSymbol в дереве по указанному имени (без учета регистра) и области объявления.- Parameters:
variableName
- Имя переменнойscopeSymbol
- Символ, внутри которого осуществляется поиск. Например,ModuleSymbol
илиMethodSymbol
.- Returns:
- VariableSymbol, если он был найден в дереве символов.
-
getModule
Корневой символ модуля документа. -
equals
-
hashCode
public int hashCode() -
toString
-
getChildrenFlat
Список всех символов всех уровней (за исключением символа модуля документа), преобразованных в плоский список. -
getMethods
Список методов документа. -
getMethodsByName
-
getVariables
Плоский список всех переменных документа -
getVariablesByName
-