GHC.Stack.CCS
| Авторские права | (c) Университет Глазго 2011 |
|---|---|
| Лицензия | см. libraries/base/LICENSE |
| Поддержка | ghc-devs@haskell.org |
| Стабильность | внутренняя |
| Переносимость | непереносимая (расширения GHC) |
| Safe Haskell | Безопасный |
| Язык | Haskell2010 |
Содержание
Описание
Доступ к симуляции стека вызовов GHC
С: base-4.5.0.0
Стек вызовов
currentCallStack :: IO [Строка] Источник
Возвращает [String] представляющий текущий стек вызовов. Это может быть полезно для отладки.
Реализация использует симуляцию стека вызовов, поддерживаемую профайлером, поэтому она работает только если программа была скомпилирована с -prof и содержит соответствующие аннотации SCC (например, с использованием -fprof-auto). В противном случае возвращаемый список, вероятно, будет пустым или неинформативным.
С: base-4.5.0.0
whoCreated :: a -> IO [Строка] Источник
Получение стека отслеживания, прикрепленного к объекту.
С: base-4.5.0.0
Внутренности
data CostCentreStack Источник
Стек центров затрат из профайлера центров затрат GHC.
data CostCentre Источник
Центр затрат из профайлера центров затрат GHC.
getCurrentCCS :: dummy -> IO (Ptr CostCentreStack) Источник
Возвращает текущий CostCentreStack (значение nullPtr, если текущая программа не была скомпилирована с поддержкой профилирования). Принимает аргумент dummy, который может использоваться для предотвращения вызова getCurrentCCS быть перемещенным упростителем, что приведет к неинформативному стеку (CAF).
getCCSOf :: a -> IO (Ptr CostCentreStack) Источник
Получение CostCentreStack связанного с заданным значением.
clearCCS :: IO a -> IO a Источник
Выполнение вычисления со стеком центров затрат пустым. Например, это используется интерпретатором для выполнения интерпретируемого вычисления без отображения стека вызовов, указывающего на то, что он был вызван из GHC.
ccsCC :: Ptr CostCentreStack -> IO (Ptr CostCentre) Источник
Получение CostCentre в начале CostCentreStack.
ccsParent :: Ptr CostCentreStack -> IO (Ptr CostCentreStack) Источник
Получение хвоста CostCentreStack.
ccLabel :: Ptr CostCentre -> IO CString Источник
Получение метки CostCentre.
ccModule :: Ptr CostCentre -> IO CString Источник
Получение модуля CostCentre.
ccSrcSpan :: Ptr CostCentre -> IO CString Источник
Получение исходного раздела CostCentre.
ccsToStrings :: Ptr CostCentreStack -> IO [Строка] Источник
Форматирование CostCentreStack в виде списка строк.
renderStack :: [Строка] -> Строка Источник
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.12.1/docs/libraries/base-4.21.0.0-8e62/GHC-Stack-CCS.html