#source #maps #compiler #representation #position #map #source-file

source-map

用于构建编译器的源映射(v3)的实用程序

28 个版本 (14 个破坏性更改)

0.15.0 2024 年 5 月 21 日
0.14.10 2024 年 2 月 10 日
0.14.9 2024 年 1 月 19 日
0.14.7 2023 年 11 月 24 日
0.2.0 2021 年 7 月 26 日

#403Web 编程

Download history 18/week @ 2024-05-12 201/week @ 2024-05-19 59/week @ 2024-05-26 28/week @ 2024-06-02 23/week @ 2024-06-09 22/week @ 2024-06-16 5/week @ 2024-06-23 4/week @ 2024-06-30 15/week @ 2024-07-07 14/week @ 2024-07-14 4/week @ 2024-07-21 162/week @ 2024-07-28 58/week @ 2024-08-04 51/week @ 2024-08-11

每月下载量 275 次
6 个 Crates(直接使用 4 个) 中使用

MIT 许可证

49KB
1K SLoC

源映射

crates.io badge docs.rs badge

用于构建源映射(v3)、处理源位置表示和源文件的实用程序。

包括

  • SpanWithSource,一个表示特定源部分的结构体
  • SpanWithoutSource,一个表示没有特定源的一般部分的结构体
  • SourceId,一个源文件的标识符
  • StringWithOptionalSourceMap,以及 ToString 特性使得生成带有和添加源标记的字符串表示变得简单
  • 一个 lsp-types-morphisms 功能,允许将位置类型转换为 lsp-types
  • 包含 MapFileStore 结构体和 FileSystem 特性,用于存储源文件和其他信息
  • 将字节索引转换为行和列信息的实用程序

源映射生成示例

请参阅 GitHub Actions 上生成的示例

git clone https://github.com/kaleidawave/source-map
cd source-map
cargo run -F inline-source-map --example source_map_creation -- LICENSE LICENSE.map

上传 LICENSE.mapevan w 的源映射可视化器 以查看生成的配对。

依赖关系

~0–7.5MB
~50K SLoC