Модель встроенного языка #
Описание модели встроенного языка платформы “1С:Предприятие 8” в 1С:EDT.
Аннотация #
В проекте 1С:EDT создана семантическая модель встроенного языка платформы “1С:Предприятие 8”. Данная модель связана с грамматикой языка и является одним из основных средств работы со встроенным языком внутри проекта 1С:EDT. Поэтому пользователи, которые будут работать с внешним API, должны четко представлять связь грамматических конструкций языка с разработанной моделью.
Описание модели будет происходить следующим образом:
- будет описан каждый элемент модели;
- для каждого элемента модели будет указано, как он связан с грамматическими элементами;
- будет указано, для чего предназначено каждое свойство и метод каждого элемента модели;
- будет дан ряд рекомендаций по более удобному использованию предоставленной модели.
Также хочется отметить, что модель создана с использованием проекта Eclipse Xcore.
Кроме того, данная модель не сериализуется, то есть нельзя получить по модели текст модуля: только из текста модуля — его модель.
Для получения доступа к node-модели, связанной с семантической моделью встроенного языка, нужно воспользоваться сервисом org.eclipse.xtext.nodemodel.util.NodeModelUtils
.
Описание модели #
Module #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Module
Представляет собой программный модуль конфигурации. Является корневым элементом модели. С каждым программным модулем конфигурации может быть сопоставлен только один элемент модели. Данный элемент модели унаследовал все методы и свойства от com._1c.g5.v8.dt.bsl.model.Block
.
Методы и атрибуты элемента #
getOwner()
— получение объекта метаданных, к которому относится данный модуль (Справочник, Документ и прочие).setOwner(EObject value)
— назначение модулю его владельца - объекта метаданных, к которому данный модуль относится. Внешние пользователи не должны использовать данный метод, так как владелец модуля определяется и проставляется автоматически.getModuleType()
— получение объекта типаcom._1c.g5.v8.dt.bsl.model.ModuleType
, определяющего тип модуля.setModuleType(ModuleType value)
— заполняет тип модуля. Внешние пользователи не должны использовать данный метод, так как тип модуля определяется и проставляется автоматически.getDefaultPragmas()
— возвращает набор директив компиляции по умолчанию типаcom._1c.g5.v8.dt.bsl.model.Pragma
, определённых в конкретном модуле. Только модули формы и команды имеют предопределенный набор значений, возвращаемых методомgetDefaultPragmas()
. Данный набор содержит в себе 1 элемент, в который включается директива компиляции “НаСервере”. Внешним пользователем не следует изменять значения, возвращаемые данным методом.allMethod()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.Method
, соответствующие методам, определенным в программном модуле. Используйте этот метод, а неgetMethod()
для получения всех методов модуля. Внешние пользователи не должны изменять элементы в данной коллекции.getPreprocessors()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.Preprocessor
, которые соответствуют всем инструкциям препроцессора, объявленным непосредственно в модуле. Внешние пользователи не должны изменять элементы в данной коллекции.getContextDef()
— возвращает объект типаcom._1c.g5.v8.dt.mcore.ContextDef
, который содержит в себе описание всех экспортируемых методов и свойств модуля. Внешние пользователи не должны изменять элементы в данной коллекции.
Block #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Block
Абстрактный элемент модели. Содержит в себе методы и атрибуты, которые одновременно присущи как com._1c.g5.v8.dt.bsl.model.Module
, так и com._1c.g5.v8.dt.bsl.model.Method
. Данный элемент модели унаследовал все методы и свойства от com._1c.g5.v8.dt.mcore.Environmental
.
Методы и атрибуты элемента #
allDeclareStatements()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.DeclareStatement
, соответствующие переменным, лежащим в блоке, начинающимся с ключевого слова “Перем” (“Var”). Используйте этот метод, а неgetDeclareStatement()
для получения всех переменных. Внешние пользователи не должны изменять элементы в данной коллекции.allStatements()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.Statement
, соответствующие операторам языка. Используйте этот метод, а неgetStatement()
, для получения всех переменных. Внешние пользователи не должны изменять элементы в данной коллекции.getImplicitVariables()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.ImplicitVariable
, соответствующие переменным, объявленным в неявном виде. Неявным объявлением переменной является её первое упоминание в левой части оператора присваивания. Внешние пользователи не должны изменять элементы в данной коллекции.
ModuleType #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ModuleType
Элемент модели, представляющий собой перечисление всех поддерживаемых типов модулей:
COMMON_MODULE
— соответствует общим программным модулям,ORDINARY_APP_MODULE
— соответствует модулю обычного приложения конфигурации,MANAGED_APP_MODULE
— соответствует модулю управляемого приложения конфигурации,EXTERNAL_CONN_MODULE
— соответствует модулю внешнего соединения конфигурации,SESSION_MODULE
— соответствует модулю сеанса конфигурации,OBJECT_MODULE
— соответствует объектным модулям объектов конфигурации,MANAGER_MODULE
— соответствует модулям менеджеров объектов конфигурации,VALUE_MANAGER_MODULE
— соответствует модулю менеджера значений для объекта метаданных “Константа”,RECORDSET_MODULE
— соответствует модулям наборов записей объектов конфигурации,FORM_MODULE
— соответствует модулям форм,COMMAND_MODULE
— соответствует модулям команд,WEB_SERVICE_MODULE
— соответствует модулям веб-сервисов,HTTP_SERVICE_MODULE
— соответствует модулям HTTP-сервисов,INTEGRATION_SERVICE_MODULE
— соответствует модулю объекта конфигурации “СервисИнтеграции”,BOT_MODULE
— соответствует модулю объекта конфигурации “Бот”.
DeclareStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.DeclareStatement
Элемент модели, ассоциирующийся с грамматической конструкцией объявления переменных.
Методы и атрибуты элемента #
getVariables()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.ExplicitVariable
, соответствующие набору всех объявляемых переменных. Внешние пользователи не должны изменять элементы в данной коллекции.
Пример представления в языке #
...
Перем перем1, перем2, перем3 Экспорт, перем4
...
PragmaTarget #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.PragmaTarget
Элемент модели, хранящий набор элементов типа com._1c.g5.v8.dt.bsl.model.Pragma
.
Методы и атрибуты элемента #
getVariables()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.Pragma
. Внешние пользователи не должны изменять элементы в данной коллекции.
Pragma #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Pragma
Элемент модели, который содержит в себе строковое представление директивы компиляции, которым аннотируются методы и переменные.
Методы и атрибуты элемента #
getSymbol()
— возвращает строковое представление директивы компиляции (без символа “&").setSymbol(String value)
— заполнение строкового представления директивы компиляции. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
&НаСервере
Процедура пример()
КонецПроцедуры
В данном примере будет создан объект модели Pragma, в котором будет содержаться значение “НаСервере”.
Variable #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Variable
Элемент модели, представляющий собой переменную во встроенном языке. Данный элемент является родительским для com._1c.g5.v8.dt.bsl.model.ExplicitVariable
, com._1c.g5.v8.dt.bsl.model.ImplicitVariable
, com._1c.g5.v8.dt.bsl.model.FormalParam
. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.mcore.NamedElement.
ExplicitVariable #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ExplicitVariable
Элемент модели, представляющий собой переменную во встроенном языке, которая может быть экспортирована из модуля. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Variable
.
Методы и атрибуты элемента #
isExport()
— возвращает “true”, когда переменная экспортируется.setExport()
— задаёт свойство возможности экспорта переменной. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
Перем перем1 Экспорт, перем2;
...
Данный фрагмент порождает двух представителей ExplicitVariable. Причем у представителя, соответствующего “перем1”, метод “isExport” вернет “true”.
ImplicitVariable #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ImplicitVariable
Элемент модели, представляющий собой локальную переменную во встроенном языке, которая не требует специального объявления. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Variable
, com._1c.g5.v8.dt.mcore.Environmental
.
Пример представления в языке #
Приведем пример создания представителей ImplicitVariable:
Функция пример()
локальнаяПеременная = 1;
Возврат локальнаяПеременная;
КонецФункции
В этом примере будет создан представитель ImplicitVariable, соответствующего “локальнаяПеременная”.
Method #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Method
Элемент модели, представляющий собой пользовательский метод встроенного языка. Данный элемент является родительским для com._1c.g5.v8.dt.bsl.model.Procedure
, com._1c.g5.v8.dt.bsl.model.Function
. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.modelPragmaTarget
, com._1c.g5.v8.dt.mcore.NamedElement
, com._1c.g5.v8.dt.bsl.model.Block
.
Методы и атрибуты элемента #
isExport()
— возвращает “true”, когда метод экспортируется.setExport()
— задание свойства возможности экспорта метода. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.isUsed()
— возвращает “true”, когда метод не экспортируется, и был найден вызов данного метода в модуле.setUsed()
— задание свойства того, что был найден вызов данного метода в модуле.isEvent()
— возвращает “true”, когда метод является обработчиком события модуля.setEvent()
— задание свойства, что метод является обработчиком события модуля.isAsync()
— возвращает “true”, когда метод является асинхронным.setAsync()
— задание свойства асинхронности метода. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getFormalParam()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.FormalParam
. Возвращаемые элементы соответствуют объявленным параметрам методов. Внешние пользователи не должны изменять элементы в данной коллекции.
Procedure #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Procedure
Элемент модели, представляющий собой процедуру, объявленную в модуле встроенного языка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Method
.
Пример представления в языке #
Процедура пример(параметр)
//код процедуры
КонецПроцедуры
Function #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Function
Элемент модели, представляющий собой функцию, объявленную в модуле встроенного языка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Method
.
Пример представления в языке #
Функция пример(параметр)
//код функции
КонецФункции
FormalParam #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.FormalParam
Элемент модели, представляющий собой параметр пользовательского метода. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.mcore.Variable
.
Методы и атрибуты элемента #
isByValue()
— возвращает “true”, если описание параметра начинается со служебного слова “Знач” (“Val”). Говорит о том, как передается параметр в метод: по значению или по ссылке.setByValue()
— задание свойства того, как передается параметр в метод. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getDefaultValue()
— возвращает объект типаcom._1c.g5.v8.dt.mcore.Literal
, который был использован как значение по умолчанию для параметра.setDefaultValue()
— задание свойства значения по умолчанию для параметра метода. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
Пример кода, когда isByValue()
вернет “true”:
Процедура пример(Знач параметр)
//код процедуры
КонецПроцедуры
Пример кода, когда getDefaultValue()
вернет конкретное значение:
Процедура пример(параметр = 1)
//код процедуры
КонецПроцедуры
Label #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Label
Элемент модели, представляющий собой метку во встроенном языке. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.mcore.NamedElement
.
Пример представления в языке #
Приведем пример создания представителей данного элемента модели:
...
~ИмяМетки : переменная = 1
...
В данном примере будет создан представитель объекта модели Label, который будет содержать в себе имя метки — “ИмяМетки”.
Statement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Statement
Элемент модели, от которого унаследованы все операторы встроенного языка.
LabeledStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.LabeledStatement
Элемент модели, представляющий собой оператор метки перехода. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Statement
.
Методы и атрибуты элемента #
getLabels()
— возвращает все объекты типаcom._1c.g5.v8.dt.bsl.model.Label
, которые указаны в операторе. Внешние пользователи не должны изменять элементы в данной коллекции.getStatement()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.UnlabeledStatement
, на который указывает метка.setStatement()
— задание оператора, на который указывает метка. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
~ИмяМетки : переменная = 1;
...
В данном примере будет создан объект LabeledStatement, у которого метод getLabel()
вернет коллекцию с одним элементом типа com._1c.g5.v8.dt.bsl.model.Label
, а метод getStatement()
вернет объект типа com._1c.g5.v8.dt.bsl.model.Statement
, соответствующий оператору “переменная = 1”.
UnlabeledStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
Элемент модели, от которого унаследованы все операторы встроенного языка, кроме com._1c.g5.v8.dt.bsl.model.LabeledStatement
. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Statement
.
SimpleStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.SimpleStatement
Элемент модели, представляющий собой оператор присваивания (или его редуцированный случай, не имеющий правой части). Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getLeft()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который располагается в левой части оператора присваивания.setLeft()
— задание выражения левой части оператора присваивания. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getRight()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который располагается в правой части оператора присваивания (если правой части нет, то просто вернет “null”).setRight()
— задание выражения правой части оператора присваивания. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
переменная = 1;
...
getLeft()
— вернет выражение (com._1c.g5.v8.dt.bsl.model.Expression
), соответствующее “переменная”.
getRight()
— вернет выражение (com._1c.g5.v8.dt.bsl.model.Expression
), соответствующее “1”.
IfStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.IfStatement
Элемент модели, представляющий собой условный оператор встроенного языка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getIfPart()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Condition
, который соответствует главной части условного оператора ("Если <Логическое выражение> Тогда
").setIfPart()
— задание главной части условного оператора.Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getElsIfParts()
— возвращает коллекцию объектов типаcom._1c.g5.v8.dt.bsl.model.Condition
, которые соответствуют частям вида “ИначеЕсли <Логическое выражение> Тогда
”. Внешние пользователи не должны изменять элементы в данной коллекции.getElseStatements()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.Statement
, которые соответствуют операторам, которые располагаются в части “Иначе” условного оператора. Внешние пользователи не должны изменять элементы в данной коллекции.
Conditional #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Conditional
Элемент модели, представляющий собой части условного оператора, которые содержат условия.
Методы и атрибуты элемента #
getPredicate()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует условию в главной части условного оператора ("Если <Логическое выражение> Тогда
") и частям, соответствующим “ИначеЕсли <Логическое выражение> Тогда
”.setPredicate()
— задание выражения, соответствующего логическому выражению в условном операторе встроенного языка. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getStatements()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.Statement
, которые соответствуют операторам, которые располагаются в части после ключевого слова “Тогда” условного оператора. Внешние пользователи не должны изменять элементы в данной коллекции.
Пример представления в языке #
...
Если переменная1 < переменная2 Тогда
переменная1 = 0;
ИначеЕсли переменная1 = переменная2 Тогда
переменная1 = переменная2;
Иначе
переменная2 = 0;
КонецЕсли;
...
В данном примере будут созданы два элемента Conditional. Первый будет соответствовать части “Если переменная1 < переменная2 Тогда переменная1 = 0;
”, а второй — части “ИначеЕсли переменная1 = переменная2 Тогда переменная1 = переменная2;
”.
LoopStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.LoopStatement
Элемент модели, от которого унаследованы все операторы цикла встроенного языка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getStatements()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.Statement
, которые соответствуют операторам, которые располагаются внутри оператора цикла. Внешние пользователи не должны изменять элементы в данной коллекции.
WhileStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.WhileStatement
Элемент модели, представляющий собой оператор встроенного языка “Пока <Логическое условие> Цикл
”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.LoopStatement
.
Методы и атрибуты элемента #
getPredicate()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует условию в данном операторе.setPredicate()
— задание выражения, соответствующего логическому выражению в данном операторе встроенного языка. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
Пока (переменная1 < переменная2) Цикл
//операторы
КонецЦикла;
...
getPredicate()
— вернет выражение, соответствующее “(переменная1 < переменная2)
”.
ForStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ForStatement
Элемент модели, от которого унаследованы все циклические операторы “Для” встроенного языка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.LoopStatement
.
Методы и атрибуты элемента #
getVariableAccess()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.StaticFeatureAccess
, который соответствует переменной, изменяющейся в цикле.setVariableAccess()
— задает значение переменной, изменяющейся в цикле. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
ForToStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ForToStatement
Элемент модели, соответствующий оператору “Для … Цикл” встроенного языка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.ForStatement
.
Методы и атрибуты элемента #
getInitializer()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует начальному значению изменяющейся переменой.setInitializer()
— задает начальное значение переменной, изменяющейся в цикле. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getBound()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует конечному значению изменяющейся переменой.setBound()
— задает конечное значение переменной, изменяющейся в цикле. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
Для счетчик = 1 По 5 Цикл
//операторы
КонецЦикла;
...
getInitializer()
— вернет выражение, соответствующее “1”.
getBound()
— вернет выражение, соответствующее “5”.
ForEachStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ForEachStatement
Элемент модели, соответствующий оператору “Для Каждого … Цикл” встроенного языка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.ForStatement
.
Методы и атрибуты элемента #
getCollection()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует коллекции, по которой итерируется изменяющаяся переменная.setCollection()
— задает коллекцию, по которой итерируется переменная, изменяющаяся в цикле. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
Для Каждого счетчик Из Коллекция Цикл
//операторы
КонецЦикла;
...
getCollection()
— вернет выражение, соответствующее “Коллекция”.
TryExceptStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.TryExceptStatement
Элемент модели, соответствующий оператору “Попытка Исключение”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getTryStatements()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.Statement
, которые соответствуют операторам, которые располагаются внутри секции “Попытка”. Внешние пользователи не должны изменять элементы в данной коллекции.getExceptStatement()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.Statement
, которые соответствуют операторам, которые располагаются внутри секции “Обработки”. Внешние пользователи не должны изменять элементы в данной коллекции.
AwaitStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.AwaitStatement
Элемент модели, соответствующий оператору “Ждать”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
. Может использоваться только в асинхронных методах.
Методы и атрибуты элемента #
getExpression()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.Expression
, которые соответствует ожидаемому выражению.setExpression()
— задает выражение типаcom._1c.g5.v8.dt.bsl.model.Expression
, вычисления которого необходимо дождаться. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
Ждать вызовАсинхронногоМетода();
...
GotoStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.GotoStatement
Элемент модели, соответствующий оператору “Перейти”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getLabel()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Label
, который соответствует метке перехода.setLabel()
— задает метку перехода. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
Перейти ~ИмяМетки;
...
getLabel()
— вернет объект, соответствующий “~ИмяМетки
”.
BreakStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.BreakStatement
Элемент модели, соответствующий оператору “Прервать”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
ContinueStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ContinueStatement
Элемент модели, соответствующий оператору “Продолжить”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
ReturnStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ReturnStatement
Элемент модели, соответствующий оператору “Возврат”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getExpression()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует возвращаемому объекту.setExpression()
— задает возвращаемый объект. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
Возврат 1;
...
getExpression()
— вернет объект, соответствующий “1”.
RaiseStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.RaiseStatement
Элемент модели, соответствующий оператору “ВызватьИсключение”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getExpression()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует выбрасываемому исключению.setExpression()
— задает объект, соответствующий выбрасываемому исключению. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
ВызватьИсключение "Текст исключения".
...
getExpression()
— вернет объект, соответствующий “Текст исключения”.
ExecuteStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.ExecuteStatement
Элемент модели, соответствующий оператору “Выполнить”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getExpression()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует выполняемому выражению.setExpression()
— задает объект, соответствующий выполняемому выражению. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
Выполнить действие;
...
getExpression()
— вернет объект, соответствующий “действие”.
EventHandlerStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.EventHandlerStatement
Элемент модели, от которого унаследованы все операторы для работы с событиями модуля и их обработчиками. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.UnlabeledStatement
.
Методы и атрибуты элемента #
getEventExpression()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует выражению события.setEventExpression()
— задает объект, соответствующий выражению событию. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getHandlerExpression()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует выражению обработчика события.setHandlerExpression()
— задает объект, соответствующий выражению обработчика события. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
AddHandlerStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.AddHandlerStatement
Элемент модели, соответствующий оператору “ДобавитьОбработчик”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.EventHandlerStatement
.
RemoveHandlerStatement #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.RemoveHandlerStatement
Элемент модели, соответствующий оператору “УдалитьОбработчик”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.EventHandlerStatement
.
Expression #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Expression
Элемент модели, от которого унаследованы все выражения встроенного языка.
BinaryExpression #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.BinaryExpression
Элемент модели, соответствующий бинарному выражению. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Expression
.
Методы и атрибуты элемента #
getOperation()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.BinaryOperation
, который соответствует типу бинарного выражения.setOperation()
— задает объект, соответствующий типу бинарного выражения. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getLeft()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует левой части бинарного выражения.setLeft()
— задает объект, соответствующий левой части бинарного выражения. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getRight()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует правой части бинарного выражения.setRight()
— задает объект, соответствующий правой части бинарного выражения. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
переменная = 1 + 2;
...
Бинарное выражение — “1 + 2”.
getOperation()
— вернет тип бинарного выражения, соответствующего “+”.
getLeft()
— вернет выражение, соответствующее “1”.
getRight()
— вернет выражение, соответствующее “2”.
BinaryOperation #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.BinaryOperation
Элемент модели, соответствующий типу бинарного выражения.
Методы и атрибуты элемента #
OR
—e1 OR e2
AND
—e1 AND e2
LT
—e1 < e2
LE
—e1 <= e2
EQ
—e1 = e2
GE
—e1 >= e2
GT
—e1 > e2
NE
—e1 <> e2
PLUS
—e1 + e2
MINUS
—e1 - e2
MULTIPLY
—e1 * e2
DIVIDE
—e1 / e2
MODULO
—e1 % e2
UnaryExpression #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.UnaryExpression
Элемент модели, соответствующий унарному выражению. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Expression
.
Методы и атрибуты элемента #
getOperation()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.UnaryOperation
, который соответствует типу унарного выражения.setOperation()
— задает объект, соответствующий типу унарного выражения. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getOperand()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который соответствует операнду унарного выражения.setOperand()
— задает объект, соответствующий операнду унарного выражения. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
переменная = -2;
...
Унарное выражение — “-2”.
getOperation()
— вернет тип унарного выражения, соответствующего “-”.
getOperand()
— вернет выражение, соответствующее “2”.
UnaryOperation #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.UnaryOperation
Элемент модели, соответствующий типу унарного выражения.
Методы и атрибуты элемента #
NOT
— NOT eMINUS
— -ePLUS
— +e
FeatureAccess #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.FeatureAccess
Элемент модели, от которого унаследованы все именованные выражения. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Expression
.
Методы и атрибуты элемента #
getName()
— возвращает значение имени для именного выражения.setName()
— задает значение имени для именного выражения. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
переменная = Справочники.Товары;
...
В данном примере 3 именованных выражения:
- “переменная” —
com._1c.g5.v8.dt.bsl.model.StaticFeatureAccess
. - “Справочники” —
com._1c.g5.v8.dt.bsl.model.StaticFeatureAccess
. - “Товары” —
com._1c.g5.v8.dt.bsl.model.DynamicFeatureAccess
.
StaticFeatureAccess #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.StaticFeatureAccess
Элемент модели, соответствующий именному выражению, к которому обращаются не через “точку”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.FeatureAccess
.
Методы и атрибуты элемента #
getImplicitVariable()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.ImplicitVariable
, если данный элемент порождает локальную переменную.setImplicitVariable()
— задает значение локальной переменной, связанной с этим выражением. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getFeatureEntry()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.FeatureEntry
. Внешние пользователи не должны изменять элементы в данной коллекции.
FeatureEntry #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.FeatureEntry
Элемент модели, который предназначен для сохранения реальных объектов (переменные и методы как глобального, так и локального контекста), на которые указывают именованные выражения.
Методы и атрибуты элемента #
getEnvironments()
— возвращает объектcom._1c.g5.v8.dt.mcore.Environments
, который указывает, для какого типа окружения создан данный объект.setEnvironments()
— задает объектcom._1c.g5.v8.dt.mcore.Environments
, который указывает, для какого типа окружения создан данный объект.getFeature()
— возвращает объект, с которым связан данный элемент модели.setFeature()
— задает объект, с которым связан данный элемент модели.
DynamicFeatureAccess #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.DynamicFeatureAccess
Элемент модели, соответствующий именному выражению, к которому обращаются через “точку”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.FeatureAccess
.
Методы и атрибуты элемента #
getSource()
— возвращает объект, который стоит перед данным до “точки”.setSource()
— задает объект, который стоит перед данным до “точки”.Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getFeatureEntry()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.FeatureEntry
. Внешние пользователи не должны изменять элементы в данной коллекции.
Invocation #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Invocation
Элемент модели, соответствующий именному выражению, которому передают набор параметров. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Expression
.
Методы и атрибуты элемента #
getMethodAccess()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.FeatureAccess
, которому передаются параметры.setMethodAccess()
— задает объект, которому передаются параметры.Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getParams()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.Expression
, которые и являются передаваемыми параметрами. Внешние пользователи не должны изменять элементы в данной коллекции.isServerCall()
— возвращает “true”, если происходит вызов серверного метода из клиентского кода.setServerCall()
— указывает на то, происходит или нет вызов серверного метода из клиентского кода.
Пример представления в языке #
...
переменная = метод(1, "2");
...
“метод(1, “2”)” — com._1c.g5.v8.dt.bsl.model.Invocation
.
“метод” — getMethodAccess()
.
1, “2” — getParams()
.
IndexAccess #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.IndexAccess
Элемент модели, соответствующий выражению, к которому обращаются через оператор “[]”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Expression
.
Методы и атрибуты элемента #
getSource()
— возвращает объект, который стоит перед оператором “[]”.setSource()
— задает объект, который стоит перед оператором “[]”.Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getIndex()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который стоит внутри оператора “[]”.setIndex()
— задает выражение, которое стоит в операторе “[]”. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
переменная = Справочник["Товары"];
...
“Справочник[“Товары”]” — com._1c.g5.v8.dt.bsl.model.IndexAccess
.
“Справочник” — getSource()
.
“Товары” — getIndex()
.
OperatorStyleCreator #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.OperatorStyleCreator
Элемент модели, соответствующий конструктору операторного типа. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Expression
.
Методы и атрибуты элемента #
getType()
— возвращает объект типаcom._1c.g5.v8.dt.mcore.TypeItem
— это реальный тип, на который указывает конструктор.setType()
— задает реальный тип, на который указывает конструктор. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getParams()
— возвращает объекты типаcom._1c.g5.v8.dt.bsl.model.Expression
, которые являются параметрами конструктора. Внешние пользователи не должны изменять элементы в данной коллекции.
Пример представления в языке #
...
переменная = Новый Массив(1, 2, 3);
...
"Новый Массив(1, 2, 3)" — com._1c.g5.v8.dt.bsl.model.OperatorStyleCreator
"Массив" — имя реального типа, который вернет `getType()`
“1, 2, 3” — getParams()
.
FunctionStyleCreator #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.FunctionStyleCreator
Элемент модели, соответствующий конструктору функционального типа. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Expression
.
Методы и атрибуты элемента #
getTypeNameExpression()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который является именем создаваемого типа.setTypeNameExpression()
— задает выражение, которое является именем создаваемого типа. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.getParamExpression()
— возвращает объект типаcom._1c.g5.v8.dt.bsl.model.Expression
, который является параметром конструктора.setParamExpression()
— задает объект, который является параметром конструктора. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
переменная = Новый ("Массив", 2);
...
"Новый ("Массив", 2)" — com._1c.g5.v8.dt.bsl.model.FunctionStyleCreator.
"Массив" — выражение, которое вернет `getTypeNameExpression()`.
“2” — выражение, которое вернет getParamExpression()
.
Literal #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.Literal
Элемент модели, от которого унаследованы все литеральные выражения встроенного языка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Expression
.
NullLiteral #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.NullLiteral
Элемент модели, соответствующий литералу “Null”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Literal
.
Пример представления в языке #
...
переменная = Null;
...
“Null” - com._1c.g5.v8.dt.bsl.model.NullLiteral
UndefinedLiteral #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.UndefinedLiteral
Элемент модели, соответствующий литералу “Неопределено”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Literal
.
Пример представления в языке #
...
переменная = Неопределено;
...
“Неопределено” — com._1c.g5.v8.dt.bsl.model.UndefinedLiteral
.
BooleanLiteral #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.BooleanLiteral
Элемент модели, соответствующий литералу “Истина” и “Ложь”. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Literal
.
Методы и атрибуты элемента #
isIsTrue()
— вернет истину, когда записано значение “Истина”.setIsTrue()
— задает значение литерала. Внешние пользователи не должны использовать данный метод, так как заполнение происходит автоматически.
Пример представления в языке #
...
переменная = Истина;
...
“Истина” — com._1c.g5.v8.dt.bsl.model.BooleanLiteral
.
NumberLiteral #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.NumberLiteral
Элемент модели, соответствующий числовому литералу. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Literal
.
Методы и атрибуты элемента #
getValue()
— возвращает набор строк, которые были записаны при написании числа. Внешние пользователи не должны изменять элементы в данной коллекции.
DateLiteral #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.DateLiteral
Элемент модели, соответствующий литералу типа дата. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Literal
.
Методы и атрибуты элемента #
getValue()
— возвращает строку, которая была записана при написании даты. Внешние пользователи не должны изменять элементы в данной коллекции.
StringLiteral #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.StringLiteral
Элемент модели, соответствующий литералу типа строка. Данный элемент унаследовал все свойства и методы от com._1c.g5.v8.dt.bsl.model.Literal
.
Методы и атрибуты элемента #
getValue()
— возвращает набор строк, которые были записаны при написании строкового литерала. Внешние пользователи не должны изменять элементы в данной коллекции.
AwaitExpression #
Элемент модели:
com._1c.g5.v8.dt.bsl.model.AwaitExpression
Элемент модели, соответствующий ожиданию асинхронного вычисления.
Методы и атрибуты элемента #
getExpression()
— возвращает выражение, вычисление которого необходимо дождаться.setExpression()
— задает выражение, вычисление которого необходимо дождаться. Внешние пользователи не должны изменять элементы в данной коллекции.