| 55 | 1 using Implab; | 
|  | 2 using System; | 
|  | 3 using System.Collections.Generic; | 
|  | 4 using System.Linq; | 
|  | 5 using System.Text; | 
|  | 6 using System.Threading.Tasks; | 
|  | 7 | 
|  | 8 namespace Implab.Parsing { | 
|  | 9     /// <summary> | 
|  | 10     /// Конечный символ расширенного регулярного выражения, при построении ДКА | 
|  | 11     /// используется для определения конечных состояний. | 
|  | 12     /// </summary> | 
|  | 13     public class EndToken: Token { | 
|  | 14 | 
|  | 15         int m_tag; | 
|  | 16 | 
|  | 17         public EndToken(int tag) { | 
|  | 18             m_tag = tag; | 
|  | 19         } | 
|  | 20 | 
|  | 21         public EndToken() | 
|  | 22             : this(0) { | 
|  | 23         } | 
|  | 24 | 
|  | 25         public int Tag { | 
|  | 26             get { return m_tag; } | 
|  | 27         } | 
|  | 28 | 
|  | 29         public override void Accept(IVisitor visitor) { | 
|  | 30             Safe.ArgumentNotNull(visitor, "visitor"); | 
|  | 31             visitor.Visit(this); | 
|  | 32         } | 
|  | 33         public override string ToString() { | 
|  | 34             return "#"; | 
|  | 35         } | 
|  | 36     } | 
|  | 37 } |