Skip to content

Releases: oscript-library/osparser

v0.0.3

04 May 12:46

Choose a tag to compare

Изменения:

  1. Миграция узлов на таблицы. #7

v0.0.2

03 May 16:34
5f5025f

Choose a tag to compare

Изменения:

  1. Поправки в документации и примерах.
  2. Минимальная поддержка синтаксиса OneScript (инструкция Использовать и хвосты у выражений Новый)

v0.0.1

02 May 15:14

Choose a tag to compare

Разбирает (должен) любой валидный код на встроенном языке платформы 1С:Предприятие 8.3.16 за исключением двух редких случаев:

  1. Инструкция препроцессора встречается внутри выражения.
  2. Инструкция препроцессора встречается перед объявлениями переменных в методе.

В некоторых редких случаях может разобрать невалидный код. Например, если директива встречается после объявлений процедур и функций, она будет проигнорирована. Еще, к примеру, не контролируется парность инструкций препроцессора.

Кроме того, известно два особых случая разбора:

  1. Если в модуле формы объявлено две переменные с одним и тем же названием, но разными директивами, то поведение парсера будет следующим:
    • если Парсер.СтрогийРежим = Истина, то будет выдано исключение "Повторное объявление идентификатора"
    • если Парсер.СтрогийРежим = Ложь, то модуль будет разобран и в местах использования переменной будет подвязано последнее по порядку объявление.
  2. Если в модуле формы объявлено два метода с одинаковым именем (платформа допускает такое для методов с директивой НаКлиентеНаСервереБезКонтекста), то поведение парсера будет следующим:
    • если Парсер.СтрогийРежим = Истина, то будет выдано исключение "Повторное объявление метода"
    • если Парсер.СтрогийРежим = Ложь, то модуль будет разобран и в местах использования метода будет подвязано последнее по порядку объявление.