/// <summary>
        /// Visists the given visitor with the specified solution item.
        /// </summary>
        public static bool Accept(ISolutionItemNode solutionItem, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(solutionItem))
            {
                foreach (var node in solutionItem.Nodes)
                {
                    if (!node.Accept(visitor))
                        break;
                }
            }

            return visitor.VisitLeave(solutionItem);
        }
        /// <summary>
        /// Visists the given visitor with the specified project.
        /// </summary>
        public static bool Accept(IProjectNode project, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(project))
            {
                foreach (var node in project.Nodes)
                {
                    if (!node.Accept(visitor))
                        break;
                }
            }

            return visitor.VisitLeave(project);
        }
示例#3
0
        /// <summary>
        /// Visists the given visitor with the specified solution.
        /// </summary>
        public static bool Accept(IReferencesNode references, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(references))
            {
                foreach (var node in references.Nodes)
                {
                    if (!node.Accept(visitor))
                        break;
                }
            }

            return visitor.VisitLeave(references);
        }
示例#4
0
        /// <summary>
        /// Visists the given visitor with the specified project.
        /// </summary>
        public static bool Accept(IProjectNode project, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(project))
            {
                foreach (var node in project.Nodes)
                {
                    if (!node.Accept(visitor))
                    {
                        break;
                    }
                }
            }

            return(visitor.VisitLeave(project));
        }
示例#5
0
        /// <summary>
        /// Visists the given visitor with the specified solution item.
        /// </summary>
        public static bool Accept(ISolutionItemNode solutionItem, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(solutionItem))
            {
                foreach (var node in solutionItem.Nodes)
                {
                    if (!node.Accept(visitor))
                    {
                        break;
                    }
                }
            }

            return(visitor.VisitLeave(solutionItem));
        }
示例#6
0
        /// <summary>
        /// Visists the given visitor with the specified custom node.
        /// </summary>
        public static bool Accept(ICustomNode node, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(node))
            {
                foreach (var child in node.Nodes)
                {
                    if (!child.Accept(visitor))
                    {
                        break;
                    }
                }
            }

            return(visitor.VisitLeave(node));
        }
示例#7
0
        /// <summary>
        /// Visists the given visitor with the specified folder.
        /// </summary>
        public static bool Accept(IFolderNode folder, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(folder))
            {
                foreach (var node in folder.Nodes)
                {
                    if (!node.Accept(visitor))
                    {
                        break;
                    }
                }
            }

            return(visitor.VisitLeave(folder));
        }
示例#8
0
        /// <summary>
        /// Visists the given visitor with the specified reference.
        /// </summary>
        public static bool Accept(IReferenceNode reference, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(reference))
            {
                foreach (var node in reference.Nodes)
                {
                    if (!node.Accept(visitor))
                    {
                        break;
                    }
                }
            }

            return(visitor.VisitLeave(reference));
        }
示例#9
0
 /// <summary>
 /// Accepts the specified visitor for traversal.
 /// </summary>
 public override bool Accept(ISolutionVisitor visitor) => SolutionVisitable.Accept(this, visitor);
示例#10
0
 /// <summary>
 /// Accepts the specified visitor for traversal.
 /// </summary>
 public override bool Accept(ISolutionVisitor visitor)
 {
     return(SolutionVisitable.Accept(this, visitor));
 }
示例#11
0
 /// <summary>
 /// Accepts the specified visitor for traversal.
 /// </summary>
 /// <returns>
 ///     <see langword="true" /> if the operation should continue with other sibling or child nodes; <see langword="false" /> otherwise.
 /// </returns>
 public abstract bool Accept(ISolutionVisitor visitor);
示例#12
0
        /// <summary>
        /// Visists the given visitor with the specified custom node.
        /// </summary>
        public static bool Accept(ICustomNode node, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(node))
            {
                foreach (var child in node.Nodes)
                {
                    if (!child.Accept(visitor))
                        break;
                }
            }

            return visitor.VisitLeave(node);
        }
示例#13
0
        /// <summary>
        /// Visists the given visitor with the specified folder.
        /// </summary>
        public static bool Accept(IFolderNode folder, ISolutionVisitor visitor)
        {
            if (visitor.VisitEnter(folder))
            {
                foreach (var node in folder.Nodes)
                {
                    if (!node.Accept(visitor))
                        break;
                }
            }

            return visitor.VisitLeave(folder);
        }
示例#14
0
 public override bool Accept(ISolutionVisitor visitor)
 {
     return(true);
 }