Документация Engee

Точки останова в скриптах

Страница в процессе разработки.

Точки останова при работе с моделями отличаются от тех, которые используются в скриптах.

Точки останова редактора скриптов interactive script icon позволяют приостановить выполнение кода в нужном месте для анализа программы и поиска ошибок. Эта функция доступна для скриптов формата .ngscript и .jl.

Чтобы добавить точку останова в кодовую ячейку, наведите курсор на левый угол строки кода. Когда появится красная точка, щелкните по ней левой кнопкой мыши, чтобы установить точку останова:

adding breakpoints

Чтобы удалить, отредактировать или отключить точку останова, зажмите правую кнопку мыши на красной метке и выберите нужную опцию:

delete breakpoints in code

Установленная точка останова отображается красной точкой в левом углу строки кода. При ее создании в нижней части редактора автоматически открывается список всех точек останова.

adding breakpoints 1

Если нажать правой кнопкой мыши по красной точке, то появится меню для выбора типа точки останова. Всего доступно три типа:

add breakpoints in code

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

  • Expression — точка останова срабатывает только если заданное выражение истинно.

  • Hit Count — срабатывает только после того, как строка кода была выполнена определенное количество раз.

  • Wait for Breakpoint — позволяет приостанавливать выполнение кода до тех пор, пока не будет достигнута другая точка останова.

Рассмотрим подробнее какие точки останова бывают и как они работают с условиями:

  • Breakpoint normal breakpoint — это базовая точка останова, которая останавливает выполнение программы, когда код достигает указанной строки. Эта точка не использует условия.

  • Condition Breakpoint condition breakpoint — точка останова с условием. Она приостанавливает выполнение кода только при выполнении заданного условия. Например, есть следующий код:

    for i in 1:10
        println(i)
    end

    Чтобы добавить точку останова с условием, кликните правой кнопкой мыши по строке кода, затем выберите Add Conditional Breakpoint. В появившемся меню в поле Expression введите условие i==5 и нажмите Enter. Теперь код остановится, когда i станет 5.

    create breakpoint 2create breakpoint 1

  • Triggered Breakpoint condition breakpoint — расширенная точка останова с дополнительными условиями. Она останавливает выполнение только в случае, если была активирована другая точка останова. Это полезно для сложной отладки, когда выполнение кода зависит от других сценариев. Например:

    a = 0.5  # классическая Breakpoint
    b = 1.0  # Triggered Breakpoint, сработает после основной

    Чтобы добавить точку с дополнительными условиями, кликните правой кнопки мыши по строке кода, выберите Add Triggered Breakpoint. В появившемся меню выберите точку останова, которая сработает перед Triggered Breakpoint и нажмите Ok:

    create breakpoint 5

Смена условий также сменит тип точки останова. Так, условия Expression и Hit Count используется для создания Condition Breakpoint condition breakpoint, а Wait for Breakpoint для Triggered Breakpoint condition breakpoint соответственно.

Для смены условия нажмите правой кнопкой мыши по уже созданной точке останова и выберите нужный вариант:

editing breakpoints

Система выведет уведомление при попытке отключить точки останова с условиями или сообщениями:

breakpoint warning 1