mirror of
https://github.com/Cekis/SWG-ScriptConverter.git
synced 2026-07-31 00:16:00 -04:00
Add code
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
using System.Globalization;
|
||||
using JetBrains.Annotations;
|
||||
|
||||
namespace ScriptConverter.Parser
|
||||
{
|
||||
public struct SourcePosition
|
||||
{
|
||||
public readonly int Line;
|
||||
public readonly int Column;
|
||||
|
||||
public SourcePosition(int line, int column = -1)
|
||||
{
|
||||
Line = line;
|
||||
Column = column;
|
||||
}
|
||||
|
||||
[Pure]
|
||||
public override string ToString()
|
||||
{
|
||||
if (Column <= 0)
|
||||
return Line.ToString("G", CultureInfo.InvariantCulture);
|
||||
|
||||
return string.Format(CultureInfo.InvariantCulture, "{0:G}:{1:G}", Line, Column);
|
||||
}
|
||||
|
||||
[Pure]
|
||||
public string ToRangeString(SourcePosition end)
|
||||
{
|
||||
if (Line == end.Line && Column == end.Column)
|
||||
return ToString();
|
||||
|
||||
return string.Format(CultureInfo.InvariantCulture, "{0}-{1}", this, end);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user