Source Map v3 mappings, lookup, and Wasm sourceMappingURL integration for MoonBit
moon add xiaoxiao1211/moonbit-sourcemap@0.1.1let builder = @moonbit_sourcemap.SourceMapBuilder::new()
builder.add_mapping(
0,
0,
"src/main.mbt",
4,
2,
name=Some("main"),
source_content=Some("fn main { println(\"hello\") }")
)
builder.add_mapping(0, 12, "src/main.mbt", 5, 4)
let map = builder.build(file=Some("app.wasm"))
let json = map.to_json(pretty=true)
let compact_mappings = map.encode_mappings()
match map.original_position_for(0, 14) {
Some(position) => println(position)
None => println("no mapping")
}///|
let map = @moonbit_sourcemap.parse_json(json_text)///|
let linked = @moonbit_sourcemap.wasm_set_source_mapping_url(
wasm_bytes, "app.wasm.map",
)
///|
let url = @moonbit_sourcemap.wasm_source_mapping_url(linked)
///|
let unlinked = @moonbit_sourcemap.wasm_remove_source_mapping_url(linked)moon run cmd/main --target native -- inspect examples/basic.map
moon run cmd/main --target native -- lookup examples/basic.map 0 14
moon run cmd/main --target native -- reverse examples/basic.map src/main.mbt 5 4
moon run cmd/main --target native -- wasm-url examples/basic.wasm
moon run cmd/main -- demomoon info
moon fmt --check
moon check
moon test
moon build --target all
moon package --listpub(all) suberror SourceMapError {
At(Int, String)
}fn SourceMap::generated_position_for(self : SourceMap, source : String, line : Int, column : Int) -> ResolvedMapping?fn SourceMap::generated_position_for_with_bias(self : SourceMap, source : String, line : Int, column : Int, bias : MappingBias) -> ResolvedMapping?fn SourceMap::generated_positions_for(self : SourceMap, source : String, line : Int, column : Int) -> Array[ResolvedMapping]fn SourceMap::original_position_for_with_bias(self : SourceMap, line : Int, column : Int, bias : MappingBias) -> ResolvedMapping?fn SourceMapBuilder::add_mapping(self : SourceMapBuilder, generated_line : Int, generated_column : Int, source : String, original_line : Int, original_column : Int, name? : String?, source_content? : String?) -> Unit raise SourceMapErrorfn SourceMapBuilder::add_unmapped(self : SourceMapBuilder, generated_line : Int, generated_column : Int) -> Unit raise SourceMapErrorfn SourceMapBuilder::build(self : SourceMapBuilder, file? : String?, source_root? : String?) -> SourceMap raise SourceMapErrorfn encode_vlq(value : Int) -> Stringfn parse_mappings(encoded : String, sources : Array[String], names : Array[String]) -> SourceMap raise SourceMapErrorInstall
Download zipSource Map v3 mappings, lookup, and Wasm sourceMappingURL integration for MoonBit