using System; namespace Netron.Lithium {/// <summary> /// Interface of a visitor /// </summary> public interface IVisitor { /// <summary> /// The actual action to perform on visited objects /// </summary> /// <param name="shape"></param> void Visit(ShapeBase shape); /// <summary> /// Whether the visiting process is done /// </summary> bool IsDone { get; } } /// <summary> /// Interface of a prepost visitor which allows you to have /// an action before, during and after a visit /// </summary> public interface IPrePostVisitor : IVisitor { /// <summary> /// action before the visit /// </summary> /// <param name="shape"></param> void PreVisit(ShapeBase shape); /// <summary> /// the action after the visit /// </summary> /// <param name="shape"></param> void PostVisit(ShapeBase shape); } }
By viewing downloads associated with this article you agree to the Terms of use and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.
This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.
A list of licenses authors might use can be found here
Skills that self-taught computer programmers lack