CsDebugScript.CodeGen.Symbol.GetAllBaseClasses C# (CSharp) Method

GetAllBaseClasses() private method

Gets all base classes (including base classes of base classes).
private GetAllBaseClasses ( ) : IEnumerable
return IEnumerable
        internal IEnumerable<Symbol> GetAllBaseClasses()
        {
            List<Symbol> unprocessed = BaseClasses.ToList();

            while (unprocessed.Count > 0)
            {
                List<Symbol> symbols = unprocessed;

                unprocessed = new List<Symbol>();
                foreach (var symbol in symbols)
                {
                    yield return symbol;
                    unprocessed.AddRange(symbol.BaseClasses);
                }
            }
        }