source_maps library
Library to create and parse source maps.
Create a source map using SourceMapBuilder. For example:
var json = (new SourceMapBuilder()
..add(inputSpan1, outputSpan1)
..add(inputSpan2, outputSpan2)
..add(inputSpan3, outputSpan3)
.toJson(outputFile);
Use the source_span package's SourceSpan
and SourceFile
classes to
specify span locations.
Parse a source map using parse, and call spanFor
on the returned mapping
object. For example:
var mapping = parse(json);
mapping.spanFor(outputSpan1.line, outputSpan1.column)
Classes
- Entry
- An entry in the source map builder.
- Mapping
- A mapping parsed out of a source map.
- MappingBundle
- MultiSectionMapping
- A meta-level map containing sections.
- NestedItem
- An item added to a NestedPrinter.
- NestedPrinter
- A more advanced printer that keeps track of offset locations to record source maps, but additionally allows nesting of different kind of items, including NestedPrinters, and it let's you automatically indent text.
- Printer
- A simple printer that keeps track of offset locations and records source maps locations.
- SingleMapping
- A map containing direct source mappings.
- SourceMapBuilder
- Builds a source map given a set of mappings.
- SourceMapFileSpan
-
A wrapper aruond a
FileSpan
that implements SourceMapSpan. - SourceMapSpan
-
A
SourceSpan
for spans coming from or being written to source maps. - TargetEntry
- A target segment entry read from a source map
- TargetLineEntry
- A line entry read from a source map.
- TextEditTransaction
- Editable text transaction.
Functions
-
guessIndent(
String code, int charOffset) → String -
Returns all whitespace characters at the start of
charOffset
's line. -
parse(
String jsonMap, {Map< String, Map> ? otherMaps, Object? mapUrl}) → Mapping - Parses a source map directly from a json string.
-
parseExtended(
String jsonMap, {Map< String, Map> ? otherMaps, Object? mapUrl}) → Mapping - Parses a source map or source map bundle directly from a json string.
-
parseJson(
Map map, {Map< String, Map> ? otherMaps, Object? mapUrl}) → Mapping - Parses a source map
-
parseJsonExtended(
Object? json, {Map< String, Map> ? otherMaps, Object? mapUrl}) → Mapping - Parses a source map or source map bundle.