perl-error 0.12.1

Error types, classification, and recovery strategies for the Perl parser ecosystem
Documentation

perl-error

Error types, classification, and recovery strategies for Perl parsing.

Overview

perl-error provides the unified error infrastructure used across the Perl parser ecosystem. It defines parser-facing error types, parse budget tracking to bound parser work on adversarial input, error classification for LSP diagnostics, and recovery traits for resilient parsing.

Public API

Type Purpose
ParseError Enum of all parse error variants (syntax, lexer, regex, EOF, etc.)
ParseOutput Structured parse result combining AST, diagnostics, and budget usage
ParseBudget Configurable limits for errors, depth, token skips, and recoveries
BudgetTracker Runtime budget consumption tracker
ErrorContext Error enriched with line/column, source text, and fix suggestions
classifier::ErrorClassifier Heuristic classification of error nodes into specific kinds
classifier::ParseErrorKind Fine-grained error categories (unclosed string, missing semicolon, etc.)
recovery::ErrorRecovery Trait for sync-point-based error recovery in parsers
recovery::RecoveryResult Outcome of a budget-aware recovery attempt

Workspace Role

Core internal crate consumed by perl-parser, perl-parser-core, perl-lsp-diagnostics, and other crates that need structured error handling and recovery.

License

MIT OR Apache-2.0