// TODO:
                // Since we are getting folder data from documents, only non-empty folders
                // in the project are discovered. It's possible to get complete folder structure
                // from VS but it requires UI thread to do so. We might want to revisit this later.
                public static FolderInfo CreateFolderHierarchyForProject(Project project)
                {
                    var handledFolders = new HashSet <string>(StringComparer.Ordinal);

                    var rootFolderInfo = new FolderInfo("<ROOT>");

                    foreach (var document in project.Documents)
                    {
                        var folders = document.Folders;
                        if (handledFolders.Add(string.Join(PathUtilities.DirectorySeparatorStr, folders)))
                        {
                            rootFolderInfo.AddFolder(folders);
                        }
                    }
                    return(rootFolderInfo);
                }