oak-folding 0.0.5

Code folding logic and AST-based region detection for the Oak framework.
docs.rs failed to build oak-folding-0.0.5
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: oak-folding-0.0.6

🚀 oak-folding

Crates.io Documentation

Code Folding Support for Oak Languages — Identify collapsible regions in source code for IDE outline views and editor folding.

🎯 Why oak-folding?

Code folding helps developers manage large files by collapsing sections of code. oak-folding provides a trait-based interface for identifying foldable regions in any Oak-supported language.

✨ Key Features

  • 📁 Folding Provider TraitFoldingProvider for language-specific folding logic
  • 🎯 Folding Range Types — Comments, imports, and custom regions
  • 📍 Precise Ranges — Byte-offset based for accurate folding
  • 🔄 Serde Support — Optional serialization for LSP integration

🏗️ Architecture

  • FoldingRange — Represents a foldable region with optional kind
  • FoldingRangeKind — Comment, Imports, or Region
  • FoldingProvider<L> — Trait for providing folding ranges

🔗 Ecosystem Integration

Used by oak-lsp for textDocument/foldingRange support, IDE extensions for code outline views, and code formatters.

📖 Documentation

For usage examples and API details, see the API documentation.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.