namespace DOM.DSL.Tokens { /// /// Token referring to the document element /// public class TElementToken : TToken { /// /// Element name /// public string ElementName; /// /// Optionally, next token /// public TToken NextToken; public override TToken Clone() { return new TElementToken { ElementName = this.ElementName, NextToken = this.NextToken?.Clone() }; } public override TToken CloneLocal() { return new TElementToken { ElementName = this.ElementName, NextToken = null }; } } }