Skip to main content

Crate perl_dap_stack

Crate perl_dap_stack 

Source
Expand description

Stack trace handling for Perl DAP

This crate provides types and utilities for parsing and managing stack traces in the Debug Adapter Protocol (DAP) format for Perl debugging.

§Overview

The crate provides:

§Example

use perl_dap_stack::{StackFrame, Source, PerlStackParser};

let mut parser = PerlStackParser::new();
let output = "  #0  main::foo at /path/script.pl line 42";

if let Some(frame) = parser.parse_frame(output, 0) {
    assert_eq!(frame.name, "main::foo");
    assert_eq!(frame.line, 42);
}

Structs§

PerlFrameClassifier
Default Perl frame classifier.
PerlStackParser
Parser for Perl debugger stack trace output.
Source
Represents a source file in the debugging context.
StackFrame
Represents a stack frame in the call stack.

Enums§

FrameCategory
Categories for stack frame classification.
SourcePresentationHint
Presentation hints for source display.
StackFramePresentationHint
Presentation hints for stack frame display.
StackParseError
Errors that can occur during stack trace parsing.

Traits§

FrameClassifier
Trait for classifying stack frames.
StackTraceProvider
Trait for providing stack traces.

Functions§

filter_user_visible_frames
Filter out internal debugger and shim frames from user-visible stack traces.
is_internal_frame
Returns true when a frame belongs to debugger/shim internals.
is_internal_frame_name_and_path
Returns true when a frame belongs to debugger/shim internals.