public override string GetText()
//^^ ensures result.Length == this.Length;
{
StringBuilder sb = new StringBuilder();
foreach (ISourceLocation fragment in this.GetFragments())
sb.Append(fragment.Source);
this.length = sb.Length;
string result = sb.ToString();
//^ assume result.Length == this.Length;
return result;
}