/// <summary>
 /// 使用指定的源文件名称和位置初始化 <see cref="SourceFileRange"/> 类的新实例。
 /// 结束位置与起始位置相同。
 /// </summary>
 /// <param name="fileName">源文件的名称。</param>
 /// <param name="loc">范围的位置。</param>
 /// <overloads>
 /// <summary>
 /// 初始化 <see cref="SourceFileRange"/> 类的新实例。
 /// </summary>
 /// </overloads>
 public SourceFileRange(string fileName, SourcePosition loc)
 {
     this.fileName = fileName;
     this.start    = this.end = loc;
 }
 /// <summary>
 /// 使用指定的起始位置和 Tab 宽度初始化 <see cref="SourceLocator"/> 类的新实例。
 /// </summary>
 /// <param name="initPosition">起始位置。</param>
 /// <param name="tabSize">Tab 的宽度。</param>
 public SourceLocator(SourcePosition initPosition, int tabSize)
 {
     this.tabSize      = tabSize;
     this.NextPosition = initPosition;
 }