internal string Text(int line) { int start = _lineStartMap[line - 1]; if (line < _lineStartMap.Length) { int length = _lineStartMap[line] - start; return(ScriptText.Substring(start, length)); } return(ScriptText.Substring(start)); }
private void SetParametersInScript() { System.Text.StringBuilder sb; int first, last; first = ScriptText.IndexOf(ParameterDefinitionRegionStart); if (first < 0) { throw new ApplicationException("The script text seems to no longer contain a parameter definition start region"); } first += ParameterDefinitionRegionStart.Length; last = ScriptText.IndexOf(ParameterDefinitionRegionEnd); if (last < 0) { throw new ApplicationException("The script text seems to no longer contain a parameter definition end region"); } sb = new System.Text.StringBuilder(); sb.Append(ScriptText.Substring(0, first)); sb.Append(ParameterDefinitionRegionCore); sb.Append(DefinitionRegionIndentation); sb.Append(ScriptText.Substring(last)); ScriptText = sb.ToString(); first = ScriptText.IndexOf(ParameterAssignmentRegionStart); if (first < 0) { throw new ApplicationException("The script text seems to no longer contain a parameter assignment start region"); } first += ParameterAssignmentRegionStart.Length; last = ScriptText.IndexOf(ParameterAssignmentRegionEnd); if (last < 0) { throw new ApplicationException("The script text seems to no longer contain a parameter assignment end region"); } sb = new System.Text.StringBuilder(); sb.Append(ScriptText.Substring(0, first)); sb.Append(ParameterAssignmentRegionCore); sb.Append(AssignmentRegionIndentation); sb.Append(ScriptText.Substring(last)); ScriptText = sb.ToString(); }