Программа на Haskell получает аргументы компилятора программно?
Возможно ли получить аргументы компилятора программно в Haskell?
Я пишу библиотеку форматирования трассировки стека, и мне было бы очень полезно узнать, использовались ли при компиляции "-prof" и "-fprof-auto".
1 ответ
Возможно GHC.RTS.Flags.getProfFlags
предоставляет достаточно информации?
Нет профилирования:
ProfFlags {doHeapProfile = NoHeapProfiling,
heapProfileInterval = 100000000, heapProfileIntervalTicks = 10,
includeTSOs = False, showCCSOnException = False,
maxRetainerSetSize = 0, ccsLength = 0, modSelector = Nothing,
descrSelector = Nothing, typeSelector = Nothing, ccSelector = Nothing,
ccsSelector = Nothing, retainerSelector = Nothing, bioSelector = Nothing}
С -prof
:
ProfFlags {doHeapProfile = NoHeapProfiling, heapProfileInterval = 100000000,
heapProfileIntervalTicks = 100, includeTSOs = False,
showCCSOnException = False, maxRetainerSetSize = 107374182408,
ccsLength = 25, modSelector = Nothing, descrSelector = Nothing,
typeSelector = Nothing, ccSelector = Nothing, ccsSelector = Nothing,
retainerSelector = Nothing, bioSelector = Nothing}
Я предполагаю, что это динамические параметры, но, похоже, на них влияют -prof
, Так что, может быть, этого достаточно для ваших целей (?)