Class AbstractMethodSymbol.AbstractMethodSymbolBuilder<C extends AbstractMethodSymbol, B extends AbstractMethodSymbol.AbstractMethodSymbolBuilder<C,B>>
java.lang.Object
com.github._1c_syntax.bsl.languageserver.context.symbol.AbstractMethodSymbol.AbstractMethodSymbolBuilder<C,B>
- Type Parameters:
C- тип конструируемого символа-наследникаB- тип самого builder'а-наследника (self-type для fluent-цепочки)
- Direct Known Subclasses:
ConstructorSymbol.ConstructorSymbolBuilder, RegularMethodSymbol.RegularMethodSymbolBuilder
- Enclosing class:
AbstractMethodSymbol
public abstract static class AbstractMethodSymbol.AbstractMethodSymbolBuilder<C extends AbstractMethodSymbol, B extends AbstractMethodSymbol.AbstractMethodSymbolBuilder<C,B>>
extends Object
Кастомизация generated
AbstractMethodSymbol.AbstractMethodSymbolBuilder: позволяет
передавать range/subNameRange как Range вместо
четырёх int-полей. Параметризация по подтипам C/B
сохраняет fluent-цепочку builder'а потомков.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionannotations(List<Annotation> annotations) Аннотации метода: всё, что стоит со&перед сигнатурой и не является compiler-directive (в OScript — пользовательские аннотации вроде&Желудь).async(boolean async) Объявлен ли метод с ключевым словомАсинх(Async).abstract Cbuild()children(List<SourceDefinedSymbol> children) Вложенные символы (локальные переменные, области внутри метода и т.п.).compilerDirectiveKind(Optional<CompilerDirectiveKind> compilerDirectiveKind) Compiler-directive (&НаСервере,&НаКлиенте, …) если стоит перед методом.deprecated(boolean deprecated) Помечен ли метод как устаревший (через doc-комментарии).description(Optional<MethodDescription> description) Распаренная BSL-doc-документация метода (комментарии перед сигнатурой).endCharacter(int endCharacter) Колонка завершения метода (см.endLine(int endLine) Строка завершения метода — закрывающее ключевое слово.export(boolean export) Объявлен ли метод с ключевым словомЭкспорт.function(boolean function) trueдля функции (сВозврат),falseдля процедуры.Имя метода.owner(DocumentContext owner) DocumentContext, в котором объявлен метод.parameters(List<ParameterDefinition> parameters) Объявленные параметры метода в порядке объявления.parent(Optional<SourceDefinedSymbol> parent) Родительский символ — область (#Область), модуль или вложенная область.protected abstract Bself()startCharacter(int startCharacter) Колонка начала тела метода (см.startLine(int startLine) Строка начала тела метода — отПроцедура/Функция(или первой аннотации) до закрывающего ключевого слова.subNameEndCharacter(int subNameEndCharacter) Колонка конца subName (см.subNameLine(int subNameLine) Строка имени метода (subName) — используется как selectionRange и для матчинга позиции к символу.subNameRange(Range range) subNameStartCharacter(int subNameStartCharacter) Колонка начала subName (см.toString()
-
Constructor Details
-
AbstractMethodSymbolBuilder
public AbstractMethodSymbolBuilder()
-
-
Method Details
-
range
-
subNameRange
-
name
-
owner
-
startLine
Строка начала тела метода — отПроцедура/Функция(или первой аннотации) до закрывающего ключевого слова.- Returns:
this.
-
startCharacter
Колонка начала тела метода (см.startLine).- Returns:
this.
-
endLine
-
endCharacter
-
subNameLine
Строка имени метода (subName) — используется как selectionRange и для матчинга позиции к символу.- Returns:
this.
-
subNameStartCharacter
Колонка начала subName (см.subNameLine).- Returns:
this.
-
subNameEndCharacter
Колонка конца subName (см.subNameLine).- Returns:
this.
-
parent
Родительский символ — область (#Область), модуль или вложенная область. Выставляется снаружи (после построения дерева), поэтому@Setter.- Returns:
this.
-
children
Вложенные символы (локальные переменные, области внутри метода и т.п.).- Returns:
this.
-
function
trueдля функции (сВозврат),falseдля процедуры.- Returns:
this.
-
export
-
description
Распаренная BSL-doc-документация метода (комментарии перед сигнатурой).- Returns:
this.
-
deprecated
Помечен ли метод как устаревший (через doc-комментарии).- Returns:
this.
-
async
-
parameters
Объявленные параметры метода в порядке объявления.- Returns:
this.
-
compilerDirectiveKind
Compiler-directive (&НаСервере,&НаКлиенте, …) если стоит перед методом. В OScript обычно отсутствует.- Returns:
this.
-
annotations
Аннотации метода: всё, что стоит со&перед сигнатурой и не является compiler-directive (в OScript — пользовательские аннотации вроде&Желудь).- Returns:
this.
-
self
-
build
-
toString
-