コード例 #1
0
        static List <LocationContainerImpl.WithContent> ConvertLocationsWidthContent(HidemaruLspClient_BackEndContract.ILocationContainer locations)
        {
            var result = new List <LocationContainerImpl.WithContent>();

            {
                var option = new TextLines.Option();
                for (long i = 0; i < locations.Length; ++i)
                {
                    var UserData = new LocationContainerImpl.WithContent(locations.Item(i));
                    result.Add(UserData);

                    var location = locations.Item(i);
                    option.Add(
                        new Uri(location.uri).AbsolutePath,
                        location.range.start.line,
                        UserData);
                }
                foreach (var fileContent in TextLines.Gather(option).Values)
                {
                    foreach (var lineContent in fileContent)
                    {
                        ((LocationContainerImpl.WithContent)lineContent.UserData).text = lineContent.Text;
                    }
                }
            }
            return(result);
        }