/// <summary>
        /// Возвращает структуру комментария.
        /// </summary>
        /// <param name="ownerName">Имя владельца комментария.</param>
        public void GetCommentsStructure(string ownerName)
        {
            var xmlList = XmlСomment.GetStructure().ChildNodes().ToList();

            foreach (var xmlElement in xmlList)
            {
                if (xmlElement.Kind() is SyntaxKind.XmlText)
                {
                    Comments.Add(new CommentStructure(xmlElement));
                    continue;
                }

                var xmlElementList = (XmlElementSyntax)xmlElement;
                var typeXml        = xmlElementList.StartTag.Name.ToString();

                switch (typeXml)
                {
                case "summary":
                    Comments.Add(new CommentStructure(xmlElementList, ownerName, GetCommentText(xmlElementList)));
                    break;

                case "param":
                    Comments.Add(new CommentStructure(xmlElementList,
                                                      AutoCommentRules.GenerateStandartAutoComment(GetParameterName(xmlElementList.StartTag)),
                                                      GetCommentText(xmlElementList)));
                    break;

                case "returns":
                    Comments.Add(new CommentStructure(xmlElementList, AutoCommentRules.GenerateReturnAutoComment(),
                                                      GetCommentText(xmlElementList)));
                    break;
                }
            }
        }
        /// <summary>
        /// Анализ комментария структуры.
        /// </summary>
        /// <param name="declaration">Лист объявления структуры.</param>
        public void AnalyzeStruct(StructDeclarationSyntax declaration)
        {
            var name = declaration.Identifier.Text;

            GetCommentsStructure(AutoCommentRules.GenerateStandartAutoComment(name));
        }
        /// <summary>
        /// Анализ комментария свойства.
        /// </summary>
        /// <param name="declaration">Лист объявления свойства.</param>
        public void AnalyzeProperty(PropertyDeclarationSyntax declaration)
        {
            var name = declaration.Identifier.Text;

            GetCommentsStructure(AutoCommentRules.GeneratePropertyAutoComment(name));
        }
        /// <summary>
        /// Анализ комментария интерфейса.
        /// </summary>
        /// <param name="declaration">Лист объявления интерфейса.</param>
        public void AnalyzeInterface(InterfaceDeclarationSyntax declaration)
        {
            var name = declaration.Identifier.Text;

            GetCommentsStructure(AutoCommentRules.GenerateInterfaceAutoComment(name));
        }
        /// <summary>
        /// Анализ комментария поля.
        /// </summary>
        /// <param name="declaration">Лист объявления поля.</param>
        public void AnalyzeField(FieldDeclarationSyntax declaration)
        {
            var name = declaration.Declaration.Variables.First().Identifier.Text;

            GetCommentsStructure(AutoCommentRules.GenerateStandartAutoComment(name));
        }
        /// <summary>
        /// Анализ комментария конструктора.
        /// </summary>
        /// <param name="declaration">Лист объявления конструктора.</param>
        public void AnalyzeConstructor(ConstructorDeclarationSyntax declaration)
        {
            var name = declaration.Identifier.Text;

            GetCommentsStructure(AutoCommentRules.GenerateConstructorAutoComment(name));
        }