#source-map #mapping #parser #maps #position #builder #borrowed-source-map

sora

轻量级且快速的源映射解析器和实用工具

3 个版本

0.0.3 2024年6月23日
0.0.2 2024年5月26日
0.0.1 2024年5月26日

#9 in #source-map

每月 50 次下载

MIT 许可证

5.5MB
1K SLoC

sora

Latest Version License CI Docs Build

文档: https://docs.rs/sora

MSRV: 1.70.0 (2023年6月1日)

许可证: MIT


lib.rs:

sora

此软件包提供了用于在 Rust 中处理源映射的数据结构和实用工具。

入门指南

use sora::SourceMap;

// Load a source map from a buffer
let sm = SourceMap::from(buf).unwrap();

// Find a mapping at the given position (line 10, column 12)
let found = sm.find_mapping((10, 12)).unwrap();

// Print the found mapping
println!("Found mapping at (10, 12): {found}");
// Expected output: "Found mapping at (10, 12): 10:12 -> 1:6:8"

概述

BorrowedSourceMap

[BorrowedSourceMap] 是包含借用的或拥有的字符串的源映射。它允许高效地解析和操作源映射,并提供创建、访问和修改其内容的方法。

SourceMap

[SourceMap] 是 [BorrowedSourceMap] 的类型别名,但拥有其所有内部字符串,为不需要手动管理字符串生命周期的用户提供了一个更简单、更安全的 API。

Position

[Position] 表示文件中的基于0的行和基于0的列。

Mapping

[Mapping] 展示源映射中 mappings 的项。

特性

  • builder: 启用 [SourceMapBuilder] 和 Mappings::new 等功能,以手动构建源映射。
  • index-map: 启用对索引映射的支持,如 规范 中所述。
  • ignore_list: 启用对 ignoreList 的支持。

依赖项

~6MB
~111K SLoC