public override void VisitUnitNode(UnitNode node) { AddLineCodeFormat("namespace {0}", node.UnitNameNode.Text); AddFullLineCode("{"); Indent(); AddFullLineCode("using System;"); AddFullLineCode("using System.Collections.Generic;"); AddLineCode(""); IEnumerable <UsedUnitNode> uses = new UsedUnitNode[0]; if (node.InterfaceSectionNode.UsesClauseNode != null) { uses = uses.Union(node.InterfaceSectionNode.UsesClauseNode.UnitListNode.Items.Select(x => x.ItemNode)); } if (node.ImplementationSectionNode.UsesClauseNode != null) { uses = uses.Union(node.ImplementationSectionNode.UsesClauseNode.UnitListNode.Items.Select(x => x.ItemNode)); } foreach (var use in uses.Select(x => x.FileNameNode.Text).Distinct()) { AddFullLineCodeFormat("using {0};", use); } Visit(node.InterfaceSectionNode); Visit(node.ImplementationSectionNode); Visit(node.InitSectionNode); Visit(node.DotNode); UnIndent(); AddFullLineCode("}"); }
public virtual void VisitUsedUnitNode(UsedUnitNode node) { Visit(node.NameNode); Visit(node.InKeywordNode); Visit(node.FileNameNode); }
public virtual void VisitUsedUnitNode(UsedUnitNode node) { Visit(node.NameNode); Visit(node.InKeywordNode); Visit(node.FileNameNode); }