private void CollectPackageTypes(PackageDeclNode node) { var packageType = types.GetType(node.ClassName) as PackageType; var innerTypes = node.Children .Where(x => x is RecordNode || x is TableNode || x is DictionaryNode); foreach (var item in innerTypes) { CollectInnerType(item as dynamic, packageType); } }
private void CollectTypeInfo(PackageDeclNode node) { bool exists = types.Exists(node.ClassName); if (!exists) { types.AddType(new PackageType(node.ClassName)); CollectPackageTypes(node); } else { Log(string.Format("Пакет с именем {0} уже существует", node.ClassName), node); } }