base-4.18.1.0: Basic libraries

Copyright | (c) The University of Glasgow 2013-2015
License | see libraries/base/LICENSE
Maintainer | cvs-ghc@haskell.org
Stability | internal
Portability | non-portable (GHC Extensions)
Safe Haskell | Safe-Inferred
Language | Haskell2010

GHC.ExecutionStack.Internal

Contents

- Internal

Description

Internals of the `ExecutionStack` module

Since: base-4.9.0.0

Synopsis

- data Location = Location {
  - objectName :: String
  - functionName :: String
  - srcLoc :: Maybe SrcLoc
  }
- data SrcLoc = SrcLoc {
  - sourceFile :: String
  - sourceLine :: Int
  - sourceColumn :: Int
  }
- data StackTrace
- stackFrames :: StackTrace -> Maybe [Location]
- stackDepth :: StackTrace -> Int
- collectStackTrace :: IO (Maybe StackTrace)
- showStackFrames :: [Location] -> ShowS
- invalidateDebugCache :: IO ()

# Internal

data Location Source #

Location information about an address from a backtrace.

Constructors

Location |

Fields

- objectName :: String
- functionName :: String
- srcLoc :: Maybe SrcLoc

data SrcLoc Source #

A location in the original program source.

Constructors

SrcLoc |

Fields

- sourceFile :: String
- sourceLine :: Int
- sourceColumn :: Int

data StackTrace Source #

The state of the execution stack

stackFrames :: StackTrace -> Maybe [Location] Source #

List the frames of a stack trace.

stackDepth :: StackTrace -> Int Source #

How many stack frames in the given `StackTrace`

collectStackTrace :: IO (Maybe StackTrace) Source #

Get an execution stack.

showStackFrames :: [Location] -> ShowS Source #

Render a stacktrace as a string

invalidateDebugCache :: IO () Source #

Free the cached debug data.