// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt) using System; using System.Collections.Generic; namespace ICSharpCode.NRefactory.VB.Ast { public interface INode { INode Parent { get; set; } List Children { get; } Location StartLocation { get; set; } Location EndLocation { get; set; } object UserData { get; set; } /// /// Visits all children /// /// The visitor to accept /// Additional data for the visitor /// The paremeter object AcceptChildren(IAstVisitor visitor, object data); /// /// Accept the visitor /// /// The visitor to accept /// Additional data for the visitor /// The value the visitor returns after the visit object AcceptVisitor(IAstVisitor visitor, object data); } }