DA.Stack
Module Snapshot
Lifecycle
Stable.
Notices
Status:
active
Introduced in: 3.4.9
Removed in: -
Warnings: 0
Deprecations: 0
Deprecated since: -Data Types
data SrcLoc
Location in the source code.
Line and column are 0-based.
Constructors:
SrcLoc
Text
Text
Text
Int
Int
Int
Int
- instance
GetFieldsrcLocEndColSrcLocInt - instance
GetFieldsrcLocEndLineSrcLocInt - instance
GetFieldsrcLocFileSrcLocText - instance
GetFieldsrcLocModuleSrcLocText - instance
GetFieldsrcLocPackageSrcLocText - instance
GetFieldsrcLocStartColSrcLocInt - instance
GetFieldsrcLocStartLineSrcLocInt - instance
SetFieldsrcLocEndColSrcLocInt - instance
SetFieldsrcLocEndLineSrcLocInt - instance
SetFieldsrcLocFileSrcLocText - instance
SetFieldsrcLocModuleSrcLocText - instance
SetFieldsrcLocPackageSrcLocText - instance
SetFieldsrcLocStartColSrcLocInt - instance
SetFieldsrcLocStartLineSrcLocInt
data CallStack
Type of callstacks constructed automatically from HasCallStack constraints.
Use callStack to get the current callstack, and use getCallStack
to deconstruct the CallStack.
type HasCallStack
= IP callStack CallStack
Request a CallStack. Use this as a constraint in type signatures in order
to get nicer callstacks for error and debug messages.
For example, instead of declaring the following type signature:
HasCallStack constraint:
myFunction will still be called the same way, but it will also show up
as an entry in the current callstack, which you can obtain with callStack.
Note that only functions with the HasCallStack constraint will be added to the
current callstack, and if any function does not have the HasCallStack constraint,
the callstack will be reset within that function.
Functions
prettyCallStack
prettyCallStack : CallStack -> Text
Pretty-print a CallStack.
getCallStack
getCallStack : CallStack -> [(Text, SrcLoc)]
Extract the list of call sites from the CallStack.
The most recent call comes first.
callStack
callStack : HasCallStack => CallStack
Access to the current CallStack.