Exemplo n.º 1
0
        public void RemoveCompiledSymbolsFromAst()
        {
            var textLogItem =
                CompiledSymbols
                .Select(s => s.AccessName)
                .Concatenate(Environment.NewLine, "", "", "    ", "");

            var progressId = this.ReportStart("Removing Compiled Symbols", textLogItem);

            foreach (var pair in CompiledMacros)
            {
                ((SymbolWithScope)pair.Value.AssociatedMacro.ParentLanguageSymbol)
                .RemoveChildSymbol(pair.Value.Name);
            }

            CompiledMacros.Clear();

            foreach (var pair in CompiledStructures)
            {
                ((SymbolWithScope)pair.Value.AssociatedStructure.ParentLanguageSymbol)
                .RemoveChildSymbol(pair.Value.Name);
            }

            CompiledStructures.Clear();

            this.ReportFinish(progressId, textLogItem);
        }