Sourcypants 0.9.0
dotnet add package Sourcypants --version 0.9.0
NuGet\Install-Package Sourcypants -Version 0.9.0
<PackageReference Include="Sourcypants" Version="0.9.0" />
paket add Sourcypants --version 0.9.0
#r "nuget: Sourcypants, 0.9.0"
// Install Sourcypants as a Cake Addin #addin nuget:?package=Sourcypants&version=0.9.0 // Install Sourcypants as a Cake Tool #tool nuget:?package=Sourcypants&version=0.9.0
SourcyPants
(Not to be confused with saucy pants)
Simple source map parser for .NET Standard. Based on SourceMapDotNet, which titles itself as a "port of a small portion of Mozilla's source-map module to .NET intended for reading a source map".
This project goes a bit further, and adds support for asking "what line and column number in the original source does line X and column Y in the generated source map to?" instead of just what line.
It also handles a bit more for display purposes, such as supporting SourceRoot
and method names.
Usage
Build a SourceMapConsumer by either supplying the JSON contents of a source map file:
var consumer = new Sourcypants.SourceMapConsumer("{ source: 'map', goes: 'here'
}");
Or build directly from a SourceMapFile
instance, built using your JSON decoder
of choice:
var file = JsonConvert.Deserialize<Sourcypants.SourceMapFile>("{ source: 'map',
goes: 'here' }");
var consumer = new Sourcypants.SourceMapConsumer(file);
Then find out which original source lines map to a given generated source line number (line numbers are 1-based):
// Get the original source lines that map to line 12, column 0 of the generated
source
var matches = consumer.OriginalPositionsFor(12, 0);
foreach (var match in matches)
{
var line = match.LineNumber;
var filename = match.File;
// Do useful things...
}
An empty array is returned if there are no matching original source lines for the specified generated source line.
License
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Newtonsoft.Json (>= 11.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.