Иерархия вызовов

На панели Call Hierarchy отображается дерево вызовов функций в исходном коде.

Для каждой функциональной fooНа панели Call Hierarchy перечислены функции и задачи, которые вызывают foo (вызывающие) и вызываемые foo (callees). Вызывающие абоненты обозначаются (функции) или (задачи). На телят указывает (функции) или (задачи). На панели Call Hierarchy перечислены прямые вызовы функций и косвенные вызовы через указатели функций. Косвенные вызовы отображаются вместе со значком. Вызовы, которые недоступны, отображаются с именем функции серым цветом.

Чтобы открыть эту панель, в Polyspace® выберите кнопку на панели Result Details.

Чтобы обновить панель.

  • Можно щелкнуть проверку во время выполнения на Results List или Source панели. Вы видите функцию, содержащую чек с его вызывающими и callees.

  • Вы можете кликнуть имя функции в исходном коде. Вы видите вызывающих абонентов и абонентов функции. Если в имени функции также отображается цвет проверки во время выполнения, вместо нажатия по имени функции щелкните правой кнопкой мыши имя и выберите Go To Definition.

В этом примере на панели Call Hierarchy отображается функция generic_validation, и его звонящих и телят.

Номер линии на панели Call Hierarchy ссылается на другую линию в исходном коде:

  • Для имени функции номер линии ссылается на начало определения функции. Определение generic_validation начинается на линии 69.

  • Для имени callee, номер относится к линии, где callee вызывается. Телячья functional_ranges вызывается generic_validation на линии 86.

  • Для имени вызывающего абонента номер относится к линии, в которой вызывающий абонент вызывает функцию. Вызывающий абонент main вызывает generic_validation на линии 50.

Совет

Чтобы перейти к местоположению вызова в исходном коде, выберите вызывающее или вызывающее имя

На панели Call Hierarchy можно выполнить следующие действия:

  •  Показать/скрыть вызывающих абонентов и тележек

  •  Навигация по иерархии вызовов

  •  Определите, является ли функция упорной

  •  Смотрите иерархию вызовов программы