Hpdi.Vss2Git.VssProjectInfo.GetAllFiles C# (CSharp) Method

GetAllFiles() public method

public GetAllFiles ( ) : IEnumerable
return IEnumerable
        public IEnumerable<VssFileInfo> GetAllFiles()
        {
            var subprojects = new LinkedList<VssProjectInfo>();
            var project = this;
            while (project != null)
            {
                foreach (var item in project.items)
                {
                    var subproject = item as VssProjectInfo;
                    if (subproject != null)
                    {
                        subprojects.AddLast(subproject);
                    }
                    else
                    {
                        yield return (VssFileInfo)item;
                    }
                }
                if (subprojects.First != null)
                {
                    project = subprojects.First.Value;
                    subprojects.RemoveFirst();
                }
                else
                {
                    project = null;
                }
            }
        }