Boo.BooLangStudioSpecs.Intellisense.FixtureCompiler.GetCaretLocation C# (CSharp) Method

GetCaretLocation() private method

private GetCaretLocation ( string source, int &column, int &line, string &lineSource ) : void
source string
column int
line int
lineSource string
return void
        private void GetCaretLocation(string source, out int? column, out int? line, out string lineSource)
        {
            var lines = source.Split(new []{Environment.NewLine}, StringSplitOptions.None);

            for (int lineIndex = 0; lineIndex < lines.Length; lineIndex++)
            {
                var caretIndex = lines[lineIndex].IndexOf(Caret);

                if (caretIndex >= 0)
                {
                    column = caretIndex;
                    line = lineIndex;
                    lineSource = lines[lineIndex].Replace(Caret, "");
                    return;
                }
            }

            column = null;
            line = null;
            lineSource = null;
        }