public MappingEntry ToMappingEntry()

in src/SourcemapToolkit.SourcemapParser/MappingListParser.cs [42:92]


		public MappingEntry ToMappingEntry(IReadOnlyList<string> names, IReadOnlyList<string> sources)
		{
			SourcePosition originalSourcePosition;

			if (OriginalColumnNumber.HasValue && OriginalLineNumber.HasValue)
			{
				originalSourcePosition = new SourcePosition(
					zeroBasedLineNumber: OriginalLineNumber.Value,
					zeroBasedColumnNumber: OriginalColumnNumber.Value);
			}
			else
			{
				originalSourcePosition = SourcePosition.NotFound;
			}
			
			string originalName = null;
			if (OriginalNameIndex.HasValue)
			{
				try
				{
					originalName = names[OriginalNameIndex.Value];
				}
				catch (IndexOutOfRangeException e)
				{
					throw new IndexOutOfRangeException("Source map contains original name index that is outside the range of the provided names array", e);
				}
			}

			string originalFileName = null;
			if (OriginalSourceFileIndex.HasValue)
			{
				try
				{
					originalFileName = sources[OriginalSourceFileIndex.Value];
				}
				catch (IndexOutOfRangeException e)
				{
					throw new IndexOutOfRangeException("Source map contains original source index that is outside the range of the provided sources array", e);
				}
			}

			MappingEntry result = new MappingEntry(
				generatedSourcePosition: new SourcePosition(
					zeroBasedLineNumber: GeneratedLineNumber,
					zeroBasedColumnNumber: GeneratedColumnNumber),
				originalSourcePosition: originalSourcePosition,
				originalName: originalName,
				originalFileName: originalFileName);

			return result;
		}